Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 268563 - Over-aggressive caching of tile pixmaps by x11-drivers/nvidia-drivers-180.51
Summary: Over-aggressive caching of tile pixmaps by x11-drivers/nvidia-drivers-180.51
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Doug Goldstein (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-04 08:32 UTC by Evgeny Stambulchik
Modified: 2009-05-27 15:43 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Samle code demonstrating the bug (Fillrect.c,5.76 KB, text/plain)
2009-05-04 08:33 UTC, Evgeny Stambulchik
Details
Screenshot running Fillrect on NVidia hardware (wrong_rendering.png,1.46 KB, image/png)
2009-05-04 08:45 UTC, Evgeny Stambulchik
Details
Screenshot running Fillrect on another hardware (correct_rendering.png,1.29 KB, image/png)
2009-05-04 08:46 UTC, Evgeny Stambulchik
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Evgeny Stambulchik 2009-05-04 08:32:38 UTC
The latest NVidia driver, apparently, caches the tile pixmap (set by XSetTile()) at the first invocation of a filling primitive so all subsequent XFill* calls render using the original pixmap even though it might be overwritten by that time.

Reproducible: Always

Steps to Reproduce:
1. Compile Fillrect.c attached.
2. Run ./Fillrect


Actual Results:  
See wrong_rendering.png attached.

Expected Results:  
See correct_rendering.png attached.
Comment 1 Evgeny Stambulchik 2009-05-04 08:33:41 UTC
Created attachment 190286 [details]
Samle code demonstrating the bug
Comment 2 Evgeny Stambulchik 2009-05-04 08:43:58 UTC
Hmm, cannot attach screenshots. I get :

Internal Error

Bugzilla has suffered an internal error. Please save this page and send it to bugzilla@gentoo.org with details of what you were doing at the time this message appeared.

URL: http://bugs.gentoo.org/attachment.cgi
undef error - Undefined subroutine Fh::slice at data/template/template/en/custom/global/hidden-fields.html.tmpl line 58 
Comment 3 Evgeny Stambulchik 2009-05-04 08:45:17 UTC
Created attachment 190288 [details]
Screenshot running Fillrect on NVidia hardware
Comment 4 Evgeny Stambulchik 2009-05-04 08:46:23 UTC
Created attachment 190289 [details]
Screenshot running Fillrect on another hardware
Comment 5 Jory A. Pratt gentoo-dev 2009-05-10 23:25:35 UTC
what video card are you using? This is vitual as new options are avaliable to control the caching.
Comment 6 Evgeny Stambulchik 2009-05-11 05:48:42 UTC
(In reply to comment #5)
$ cat /proc/driver/nvidia/cards/0 
Model:           GeForce GTX 260
IRQ:             16
Video BIOS:      62.00.0e.00.00
Card Type:       PCI-E
DMA Size:        40 bits
DMA Mask:        0xffffffffff
Bus Location:    01.00.0
Comment 7 Doug Goldstein (RETIRED) gentoo-dev 2009-05-27 15:43:35 UTC
NVIDIA only provides their X11 drivers in a binary fashion, as such there is
not much debugging or troubleshooting Gentoo can do with issues reported about
them.

You can use nvidia-bug-report.sh to generate some information to e-mail over to
NVIDIA @ linux-bugs@nvidia.com and you may also wish to consider exploring
NVIDIA's Linux driver forum @
http://www.nvnews.net/vbulletin/forumdisplay.php?s=&forumid=14

To further assist in debugging the issue and to have more information to
provide NVIDIA (and have a better chance that your issue will get fixed in the
future), you can attempt to debug your X server. To debug your server properly,
please follow the documentation outline here,
http://www.x.org/wiki/Development/Documentation/ServerDebugging

The above link does not contain references to how to perform this properly on
Gentoo. In a nutshell, you must rebuild X and it's libraries with USE=debug,
add -ggdb to your CFLAGS, and add splitdebug to FEATURES. More information
about this can be found at http://www.gentoo.org/proj/en/qa/backtraces.xml

Since this bug is with nvidia-drivers, which is a package that Gentoo has
minimal control over, this bug will be marked as UPSTREAM. However, in the
event that you debug your X server and can produce a backtrace, please feel
free to post it here and if it is unrelated to nvidia-drivers you or a Gentoo
developer can re-open this bug and address the issue where it truly lies.