Summary: | nv50/NVS135M: video hangs/flickers when fullscreen | ||
---|---|---|---|
Product: | xorg | Reporter: | Stefan Neufeind <freedesktop.org> |
Component: | Driver/nouveau | Assignee: | Nouveau Project <nouveau> |
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> |
Severity: | normal | ||
Priority: | medium | CC: | anssi, mschiffer |
Version: | 7.3 (2007.09) | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Stefan Neufeind
2009-08-07 06:43:09 UTC
Could you give the output of "nvclock -i"? What xserver are you using, are you running kms? Running packages from Fedora 11 (testing) including packages: xorg-x11-server-utils-7.4-7.fc11.x86_64 xorg-x11-server-common-1.6.3-4.fc11.x86_64 xorg-x11-server-Xorg-1.6.3-4.fc11.x86_64 Not running kms (yet), since Fedora 11 doesn't have that by default (possible through kernelparameter nouveau.modeset=1). When turning it on other problems appear (e.g. external and notebook-internal display appear in wrong order, some smaller graphics-errors etc.). Might *activating* KMS help narrow down performance-problems or would you estimate that not running KMS might be the safer part for now which "should work"? +++ nvclock -i Xlib: extension "NV-CONTROL" missing on display ":0.0". -- General info -- Card: nVidia Quadro NVS 135M Architecture: G86 A2 PCI id: 0x42b GPU clock: 297.000 MHz Bustype: PCI-Express -- Shader info -- Clock: 594.000 MHz Stream units: 16 (1b) ROP units: 4 (1b) -- Memory info -- Amount: 128 MB Type: 128 bit DDR3 Clock: 302.400 MHz -- PCI-Express info -- Current Rate: 16X Maximum rate: 16X -- Sensor info -- Sensor: GPU Internal Sensor GPU temperature: 85C -- VideoBios information -- Version: 60.86.68.00.16 Signon message: G86M G3-64 Briscoe sku0 VGA BIOS Performance level 0: gpu 275MHz/shader 550MHz/memory 301MHz/1.15V/100% Performance level 1: gpu 400MHz/shader 800MHz/memory 594MHz/1.15V/100% VID mask: 7 Voltage level 0: 1.00V, VID: 4 Voltage level 1: 1.15V, VID: 0 Voltage level 2: 1.18V, VID: 2 Voltage level 3: 1.20V, VID: 3 +++ xvinfo X-Video Extension version 2.2 screen #0 Adaptor #0: "Nouveau GeForce 8/9 Textured Video" number of ports: 32 port base: 57 operations supported: PutImage supported visuals: depth 24, visualID 0x21 depth 24, visualID 0x22 no port attributes defined maximum XvImage size: 4096 x 4096 Number of image formats: 3 id: 0x32315659 (YV12) guid: 59563132-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x30323449 (I420) guid: 49343230-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x32595559 (YUY2) guid: 59555932-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed) I have the same problems with a completely different setup on my Ubuntu system. xserver 1.7.99.2 + git 0cb638dc (but I had these problems with all versions since 1.6) Kernel 2.6.33-rc5 + Nouveau git 5e660316 (but again, happens with all versions I have tested in the last 3 months) xf86-video-nouveau git 2630a155 The problems occur whenever I set MPlayer to fullscreen on my 1920x1200 display. It happens with Metacity compositing enabled or disabled. My card is a 8400M GS, built into a Dell XPS M1330 notebook. This bug is rather annoying, as it makes XV unusable on my display, but with MPlayer's x11 driver my computer is to slow to play hd videos. If you don't know why this happens, do you know where I can start debugging? I don't know much about the internals of the nouveau driver, but I consider myself a rather competent C programmer. # nvclock -i Xlib: extension "NV-CONTROL" missing on display ":0.0". -- General info -- Card: nVidia Geforce 8400M GS Architecture: G86 A2 PCI id: 0x427 GPU clock: 216.000 MHz Bustype: PCI-Express -- Shader info -- Clock: 432.000 MHz Stream units: 16 (1b) ROP units: 4 (1b) -- Memory info -- Amount: 128 MB Type: 128 bit DDR3 Clock: 351.000 MHz -- PCI-Express info -- Current Rate: 16X Maximum rate: 16X -- Sensor info -- Sensor: GPU Internal Sensor GPU temperature: 73C -- VideoBios information -- Version: 60.86.45.00.40 Signon message: G86M G3-64 Thurman sku0 VGA BIOS Performance level 0: gpu 275MHz/shader 550MHz/memory 301MHz/1.15V/100% Performance level 1: gpu 400MHz/shader 800MHz/memory 600MHz/1.15V/100% VID mask: 3 Voltage level 0: 1.00V, VID: 4 Voltage level 1: 1.15V, VID: 0 Voltage level 2: 1.18V, VID: 2 Voltage level 3: 1.20V, VID: 3 # xvinfo X-Video Extension version 2.2 screen #0 Adaptor #0: "Nouveau GeForce 8/9 Textured Video" number of ports: 32 port base: 63 operations supported: PutImage supported visuals: depth 24, visualID 0x21 depth 24, visualID 0x22 number of attributes: 2 "XV_SET_DEFAULTS" (range 0 to 0) client settable attribute "XV_SYNC_TO_VBLANK" (range 0 to 1) client settable attribute client gettable attribute (current value is 1) maximum XvImage size: 4096 x 4096 Number of image formats: 3 id: 0x32315659 (YV12) guid: 59563132-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x30323449 (I420) guid: 49343230-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x32595559 (YUY2) guid: 59555932-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed) Try applying http://0x04.net/~mwk/gen.diff This is known issue... the card is using only 1/8 of its execution resources because of misextracted initialization values on G86. It'll be fixed for good when the ctxprog/ctxvals generator [above] is finished for all cards. If the generator doesn't work for you, add the following lines to src/nv50_accel.c in DDX after "OUT_RING (chan, NV50TCL_COND_MODE_ALWAYS);": BEGIN_RING(chan, tesla, NV50TCL_WARP_HALVES, 1); OUT_RING(chan, 2); BEGIN_RING(chan, tesla, 0x1400, 1); OUT_RING(chan, 0xf); Either way, please report which of these work for you. The first patch doesn't make any difference, the second one works well. Ummm... the first patch really should make some difference.... It should either speed up Xv, or crash and burn horribly. Could you attach a kernel boot log with gen.diff applied? Oops, forgot to update initrd... the first patch works, too. Should be fixed in latest git. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.