[MPlayer-dev-eng] mplayer vo_vdpau X crashes / freezes

Marco Munderloh munderl at tnt.uni-hannover.de
Tue Jun 14 19:01:53 CEST 2011


Hi,

I have a problem with mplayers vo_vdpau implementation (just the vo, not the vc) for some time now. It happens to me quiet often that X freezes if mplayer resizes it's
vdpau-window, e.g. on playback start or if toggling between fullscreen/window mode. X uses 100% CPU in this situations. If logging in via ssh to the machine and killing
mplayer with -9, X is back again after a few seconds. This is for quiet some time now, I don't remember the mplayer/nvidia driver version it started.

Strange thing is: I have absolutely _no_ problems with mplayer2's vo_vdpau implementation. I'm not familiar with it's code and where it differs from mplayer's one, but I do
see that it seems to be older as it still shows green screens during fullscreen toggling which color had been changed in mplayer to "nearly black gray" a long time ago I think.

mplayer gives me no error message prior freezing X. I'm using latest svn and 275 nvidia drivers atm.

My card is a nVidia Corporation G94 [GeForce 9600 GT] (rev a1).

This is what is written to the Xorg.0.log:
[ 78144.441] (WW) NVIDIA(0): WAIT (2, 6, 0x8000, 0x000022ac, 0x0000a8d0)
[ 78146.488] [mi] EQ overflowing. The server is probably stuck in an infinite loop.
[ 78146.488]
Backtrace:
[ 78146.571] 0: /usr/bin/X (xorg_backtrace+0x28) [0x483068]
[ 78146.571] 1: /usr/bin/X (mieqEnqueue+0x1f4) [0x482a14]
[ 78146.571] 2: /usr/bin/X (xf86PostMotionEventP+0xc4) [0x469d64]
[ 78146.571] 3: /usr/lib64/xorg/modules/input/evdev_drv.so (0x7f501753f000+0x4e05) [0x7f5017543e05]
[ 78146.571] 4: /usr/bin/X (0x400000+0x6aea7) [0x46aea7]
[ 78146.571] 5: /usr/bin/X (0x400000+0xf3833) [0x4f3833]
[ 78146.571] 6: /lib64/libc.so.6 (0x7f501d497000+0x32b30) [0x7f501d4c9b30]
[ 78146.571] 7: /usr/lib64/xorg/modules/updates/drivers/nvidia_drv.so (0x7f5018c5e000+0x7d082) [0x7f5018cdb082]
[ 78146.571] 8: /usr/lib64/xorg/modules/updates/drivers/nvidia_drv.so (0x7f5018c5e000+0xe2063) [0x7f5018d40063]
[ 78146.571] 9: /usr/lib64/xorg/modules/updates/drivers/nvidia_drv.so (0x7f5018c5e000+0xabee2) [0x7f5018d09ee2]
[ 78146.571] 10: /usr/lib64/xorg/modules/updates/drivers/nvidia_drv.so (0x7f5018c5e000+0x3de22f) [0x7f501903c22f]
[ 78146.571] 11: /usr/bin/X (0x400000+0x1270e6) [0x5270e6]
[ 78146.571] 12: /usr/bin/X (0x400000+0x88b00) [0x488b00]
[ 78146.571] 13: /usr/bin/X (BlockHandler+0x50) [0x446ec0]
[ 78146.571] 14: /usr/bin/X (WaitForSomething+0x131) [0x45bf91]
[ 78146.571] 15: /usr/bin/X (0x400000+0x522e2) [0x4522e2]
[ 78146.571] 16: /usr/bin/X (0x400000+0x25ace) [0x425ace]
[ 78146.571] 17: /lib64/libc.so.6 (__libc_start_main+0xfd) [0x7f501d4b5bfd]
[ 78146.571] 18: /usr/bin/X (0x400000+0x25679) [0x425679]
[ 78151.441] (WW) NVIDIA(0): WAIT (1, 6, 0x8000, 0x000022ac, 0x0000a8d0)


And this is in var/log/messages (I killed X and mplayer
This is where it freezes:
kernel: [78141.436997] NVRM: Xid (0000:01:00): 13, 0003 00000000 00008297 00001b0c 0000f010 00000080

And after killing X, this appears:
kdm[25001]: X server for display :0 terminated unexpectedly
kernel: [78206.198074] NVRM: Xid (0000:01:00): 8, Channel 00000001
kernel: [78208.198038] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
kernel: [78210.198105] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context



More information about the MPlayer-dev-eng mailing list