[nv20] glx-swap-event hangs X server
Submitted by Ian Romanick
Assigned to Nouveau Project
Link to original bug (#101323)
Description
Running 'bin/glx-swap-event --async -auto' on at least NV20 hangs the X server.
Some dmesg info that might be related (during a full piglit run):
[ 3288.695639] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 16bc data 00000001
[ 3288.695674] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0af0 data 00000000
[ 3288.695692] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0af4 data 00000000
[ 3288.695711] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0af8 data 4affffff
[ 3288.695728] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0afc data 477fff00
[ 3288.695747] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000800 [STATE_INVALID] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 14f8 data ffffffff
[ 3288.695765] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000800 [STATE_INVALID] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 14fc data ffffffff
[ 3288.695783] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000800 [STATE_INVALID] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 147c data 00000000
[ 3288.695800] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 03f8 data 00000000
[ 3288.695817] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 03fc data 00000000
[ 3288.695864] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 16bc data 00000001
[ 3288.695882] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0af0 data 00000000
[ 3288.695900] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0af4 data 00000000
[ 3288.695918] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0af8 data 4affffff
[ 3288.695935] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 0afc data 477fff00
[ 3288.695952] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000800 [STATE_INVALID] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 14f8 data ffffffff
[ 3288.695969] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000800 [STATE_INVALID] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 14fc data ffffffff
[ 3288.695986] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000800 [STATE_INVALID] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 147c data 00000000
[ 3288.696003] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 03f8 data 00000000
[ 3288.696052] nouveau 0000:04:00.0: gr: intr 00100000 [ERROR] nsource 00000040 [ILLEGAL_MTHD] nstatus 05000000 [INVALID_STATE PROTECTION_FAULT] ch 1 [Xorg[713]] subc 7 class 0096 mthd 03fc data 00000000
Backtrace of the X server process:
(gdb) bt
#0 0x00007f999b0d1787 in ioctl () from /lib64/libc.so.6
#1 0x00007f999c5d52e8 in drmIoctl () from /lib64/libdrm.so.2
#2 0x00007f999c5d7e6b in drmCommandWrite () from /lib64/libdrm.so.2
#3 0x00007f99979701f2 in nouveau_bo_wait () from /lib64/libdrm_nouveau.so.2
#4 0x00007f9997b812e2 in nouveau_dri2_copy_region2 () from /usr/lib64/xorg/modules/drivers/nouveau_drv.so
#5 0x000000000056ce6b in dri2_copy_region ()
#6 0x000000000056e19f in DRI2SwapBuffers ()
#7 0x000000000056f9ad in ProcDRI2Dispatch ()
#8 0x00000000004370f5 in Dispatch ()
#9 0x000000000043b078 in dix_main ()
#10 0x00007f999aff4401 in __libc_start_main () from /lib64/libc.so.6
#11 0x0000000000424d5a in _start ()
This is on Fedora 24.
xorg-x11-server-Xorg-1.19.3-1.fc25.x86_64 kernel-4.11.3-200.fc25.x86_64 xorg-x11-drv-nouveau-1.0.15-2.fc25.x86_64
I'm using Mesa master from the last couple days (commit 06f42519).
Version: git