Bug#975990: xorg: X server stop working
Dear Maintainer,
I tried to reconstruct the line number information with
the dbgsym packages from the backtrace provided by the submitter.
This points to the assert in this line of code: [1]
There are already some other references showing a similar assert below:
../nouveau/pushbuf.c:723: nouveau_pushbuf_data: Assertion `kref' failed.
It might be helpful to see the related dmesg output.
Kind regards,
Bernhard
Backtrace: Reconstructed:
0: Xorg (OsLookupColor+0x138) [0x5566d2ec4e88] 0: 0x000055555570bd78 in OsSigHandler at ../../../../os/osinit.c:135
1: libpthread.so.0 (funlockfile+0x50) [0x7fd0e1dfc18f] 1: 0x00007ffff748f140 <__restore_rt>
2: libc.so.6 (gsignal+0x141) [0x7fd0e1c5cc41] 2: 0x00007ffff72efc41 in __GI_raise at ../sysdeps/unix/sysv/linux/internal-signals.h:86
3: libc.so.6 (abort+0x123) [0x7fd0e1c46537] 3: 0x00007ffff72d9537 in __GI_abort at abort.c:79
4: libc.so.6 (?+0x0) [0x7fd0e1c46400] 4: 0x00007ffff72d9400 in __assert_fail_base at assert.c:83
5: libc.so.6 (__assert_fail+0x42) [0x7fd0e1c555c2] 5: 0x00007ffff72e85c2 in __GI___assert_fail at assert.c:101
6: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0xff) [0x7fd0da9ba4df] 6: 0x00007ffff061d4df in nouveau_pushbuf_data at ../nouveau/pushbuf.c:723
7: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0x63) [0x7fd0da9ba443] 7: 0x00007ffff061d443 in nouveau_pushbuf_data at ../nouveau/pushbuf.c:715
8: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0x17f) [0x7fd0da9ba65f] 8: 0x00007ffff061d55f in pushbuf_submit at ../nouveau/pushbuf.c:326
9: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0x597) [0x7fd0da9baed7] 9: 0x00007ffff061d977 in pushbuf_flush at ../nouveau/pushbuf.c:401
10: libdrm_nouveau.so.2 (nouveau_pushbuf_space+0x359) [0x7fd0da9bb709] 10: 0x00007ffff061e459 in pushbuf_refn at ../nouveau/pushbuf.c:471
11: nouveau_dri.so (nouveau_drm_screen_create+0x2053f) [0x7fd0e040ad6f] 11: 0x00007ffff608695f in PUSH_AVAIL or PUSH_REFN at ../src/gallium/drivers/nouveau/nvc0/nvc0_winsys.h:45
12: nouveau_dri.so (nouveau_drm_screen_create+0xc87a3) [0x7fd0e055b293] 12: 0x00007ffff612ebc3 in nvc0_constbufs_validate at ../src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c:599
13: nouveau_dri.so (nouveau_drm_screen_create+0xcb33e) [0x7fd0e05608fe] 13: 0x00007ffff613175e in nvc0_state_validate at ../src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c:980
14: nouveau_dri.so (nouveau_drm_screen_create+0xcb477) [0x7fd0e0560ce7] 14: 0x00007ffff6131897 in nvc0_state_validate_3d at ../src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c:998
15: nouveau_dri.so (nouveau_drm_screen_create+0xccb2e) [0x7fd0e05638be] 15: 0x00007ffff6132f4e in nvc0_draw_vbo at ../src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c:1006
16: nouveau_dri.so (__driDriverGetExtensions_zink+0x233c8) [0x7fd0dfc65f48] 16: 0x00007ffff58ded58 in st_draw_vbo at ../src/mesa/state_tracker/st_draw.c:266
17: nouveau_dri.so (__driDriverGetExtensions_zink+0x2621f4) [0x7fd0e00e3d04] 17: 0x00007ffff5b1db84 in _mesa_draw_arrays at ../src/mesa/main/draw.c:367
18: libglamoregl.so (glamor_create_gc+0xdff8) [0x7fd0e12d2448] 18: 0x00007ffff6f27758 in glamor_poly_fill_rect_gl at ../../../../glamor/glamor_rects.c:148
19: Xorg (DamageRegionAppend+0x19be) [0x5566d2e49c9e] 19: 0x000055555568f35e in damagePolyFillRect at ../../../../../miext/damage/damage.c:1224
20: libglamoregl.so (glamor_pixmap_exchange_fbos+0x78d) [0x7fd0e12cf05d] 20: 0x00007ffff6f319ad in glamor_solid_boxes at ../../../../glamor/glamor_utils.c:51
21: libglamoregl.so (glamor_pixmap_exchange_fbos+0x653) [0x7fd0e12ceaf3] 21: 0x00007ffff6f31873 in glamor_composite_rectangles at ../../../../glamor/glamor_compositerects.c:244
22: Xorg (AddTraps+0x34af) [0x5566d2e3e71f] 22: 0x000055555568230f in ProcRenderFillRectangles at ../../../../render/render.c:1414
23: Xorg (SendErrorToClient+0x354) [0x5566d2d67964] 23: 0x00005555555ae904 in Dispatch at ../../../../dix/dispatch.c:478
24: Xorg (InitFonts+0x3b4) [0x5566d2d6b914] 24: 0x00005555555b28d4 in dix_main at ../../../../dix/main.c:276
25: libc.so.6 (__libc_start_main+0xea) [0x7fd0e1c47cca] 25: 0x00007ffff72dacca in __libc_start_main at ../csu/libc-start.c:308
26: Xorg (_start+0x2a) [0x5566d2d5573a] 26: 0x000055555559c73a <_start+42>
[1]
https://sources.debian.org/src/libdrm/2.4.103-2/nouveau/pushbuf.c/#L723
[2]
https://bugs.debian.org/977323
Maybe similar:
https://bugs.debian.org/929130
https://bugs.debian.org/927954
https://bugs.freedesktop.org/show_bug.cgi?id=91632
https://gitlab.freedesktop.org/mesa/mesa/issues/1080
https://gitlab.freedesktop.org/mesa/mesa/-/issues/3518
https://bugs.launchpad.net/oxide/+bug/1499419
# amd64 qemu VM 2020-12-15
approx:
debian-11-bullseye-snapshot.debian.org https://snapshot.debian.org/archive/debian/20201128T000000Z/
debian-11-bullseye-debug-snapshot.debian.org https://snapshot.debian.org/archive/debian-debug/20201128T000000Z/
sources.list:
deb [check-valid-until=no] http://192.168.178.25:9999/debian-11-bullseye-snapshot.debian.org/ bullseye main
deb-src [check-valid-until=no] http://192.168.178.25:9999/debian-11-bullseye-snapshot.debian.org/ bullseye main
deb [check-valid-until=no] http://192.168.178.25:9999/debian-11-bullseye-debug-snapshot.debian.org/ bullseye-debug main
apt update
apt dist-upgrade
apt install gdb xserver-xorg-core xserver-xorg-core-dbgsym libgl1-mesa-dri-dbgsym libdrm-nouveau2-dbgsym
gdb -q --args /usr/lib/xorg/Xorg
set width 0
set pagination off
tb dix_main
run
call dlopen("/usr/lib/xorg/modules/libfb.so",0x102)
call dlopen("/usr/lib/xorg/modules/libglamoregl.so",0x102)
call dlopen("/usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so",0x102)
b *InitFonts+0x3b4
info b
b *0x00005555555b28cf
info b
Backtrace: Reconstructed:
0: Xorg (OsLookupColor+0x138) [0x5566d2ec4e88] 0: 0x000055555570bd78 in OsSigHandler at ../../../../os/osinit.c:135
1: libpthread.so.0 (funlockfile+0x50) [0x7fd0e1dfc18f] 1: 0x00007ffff748f140 <__restore_rt>
2: libc.so.6 (gsignal+0x141) [0x7fd0e1c5cc41] 2: 0x00007ffff72efc41 in __GI_raise at ../sysdeps/unix/sysv/linux/internal-signals.h:86
3: libc.so.6 (abort+0x123) [0x7fd0e1c46537] 3: 0x00007ffff72d9537 in __GI_abort at abort.c:79
4: libc.so.6 (?+0x0) [0x7fd0e1c46400] 4: 0x00007ffff72d9400 in __assert_fail_base at assert.c:83
5: libc.so.6 (__assert_fail+0x42) [0x7fd0e1c555c2] 5: 0x00007ffff72e85c2 in __GI___assert_fail at assert.c:101
6: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0xff) [0x7fd0da9ba4df] 6: 0x00007ffff061d4df in nouveau_pushbuf_data at ../nouveau/pushbuf.c:723
7: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0x63) [0x7fd0da9ba443] 7: 0x00007ffff061d443 in nouveau_pushbuf_data at ../nouveau/pushbuf.c:715
8: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0x17f) [0x7fd0da9ba65f] 8: 0x00007ffff061d55f in pushbuf_submit at ../nouveau/pushbuf.c:326
9: libdrm_nouveau.so.2 (nouveau_pushbuf_data+0x597) [0x7fd0da9baed7] 9: 0x00007ffff061d977 in pushbuf_flush at ../nouveau/pushbuf.c:401
10: libdrm_nouveau.so.2 (nouveau_pushbuf_space+0x359) [0x7fd0da9bb709] 10: 0x00007ffff061e459 in pushbuf_refn at ../nouveau/pushbuf.c:471
11: nouveau_dri.so (nouveau_drm_screen_create+0x2053f) [0x7fd0e040ad6f] 11: 0x00007ffff608695f in PUSH_AVAIL or PUSH_REFN at ../src/gallium/drivers/nouveau/nvc0/nvc0_winsys.h:45
12: nouveau_dri.so (nouveau_drm_screen_create+0xc87a3) [0x7fd0e055b293] 12: 0x00007ffff612ebc3 in nvc0_constbufs_validate at ../src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c:599
13: nouveau_dri.so (nouveau_drm_screen_create+0xcb33e) [0x7fd0e05608fe] 13: 0x00007ffff613175e in nvc0_state_validate at ../src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c:980
14: nouveau_dri.so (nouveau_drm_screen_create+0xcb477) [0x7fd0e0560ce7] 14: 0x00007ffff6131897 in nvc0_state_validate_3d at ../src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c:998
15: nouveau_dri.so (nouveau_drm_screen_create+0xccb2e) [0x7fd0e05638be] 15: 0x00007ffff6132f4e in nvc0_draw_vbo at ../src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c:1006
16: nouveau_dri.so (__driDriverGetExtensions_zink+0x233c8) [0x7fd0dfc65f48] 16: 0x00007ffff58ded58 in st_draw_vbo at ../src/mesa/state_tracker/st_draw.c:266
17: nouveau_dri.so (__driDriverGetExtensions_zink+0x2621f4) [0x7fd0e00e3d04] 17: 0x00007ffff5b1db84 in _mesa_draw_arrays at ../src/mesa/main/draw.c:367
18: libglamoregl.so (glamor_create_gc+0xdff8) [0x7fd0e12d2448] 18: 0x00007ffff6f27758 in glamor_poly_fill_rect_gl at ../../../../glamor/glamor_rects.c:148
19: Xorg (DamageRegionAppend+0x19be) [0x5566d2e49c9e] 19: 0x000055555568f35e in damagePolyFillRect at ../../../../../miext/damage/damage.c:1224
20: libglamoregl.so (glamor_pixmap_exchange_fbos+0x78d) [0x7fd0e12cf05d] 20: 0x00007ffff6f319ad in glamor_solid_boxes at ../../../../glamor/glamor_utils.c:51
21: libglamoregl.so (glamor_pixmap_exchange_fbos+0x653) [0x7fd0e12ceaf3] 21: 0x00007ffff6f31873 in glamor_composite_rectangles at ../../../../glamor/glamor_compositerects.c:244
22: Xorg (AddTraps+0x34af) [0x5566d2e3e71f] 22: 0x000055555568230f in ProcRenderFillRectangles at ../../../../render/render.c:1414
23: Xorg (SendErrorToClient+0x354) [0x5566d2d67964] 23: 0x00005555555ae904 in Dispatch at ../../../../dix/dispatch.c:478
24: Xorg (InitFonts+0x3b4) [0x5566d2d6b914] 24: 0x00005555555b28d4 in dix_main at ../../../../dix/main.c:276
25: libc.so.6 (__libc_start_main+0xea) [0x7fd0e1c47cca] 25: 0x00007ffff72dacca in __libc_start_main at ../csu/libc-start.c:308
26: Xorg (_start+0x2a) [0x5566d2d5573a] 26: 0x000055555559c73a <_start+42>
https://sources.debian.org/src/libdrm/2.4.103-2/nouveau/pushbuf.c/#L723
722 kref = cli_kref_get(push->client, bo);
723 assert(kref);
724 kpsh = &krec->push[krec->nr_push++];
Should produce somewhere the output:
...: ../nouveau/pushbuf.c:723: nouveau_pushbuf_data: Assertion `kref' failed.
Same reporter to libdrm-nouveau2:
https://bugs.debian.org/977323
Maybe similar:
https://bugs.debian.org/929130
https://bugs.debian.org/927954
https://bugs.freedesktop.org/show_bug.cgi?id=91632
https://gitlab.freedesktop.org/mesa/mesa/issues/1080
https://gitlab.freedesktop.org/mesa/mesa/-/issues/3518
https://bugs.launchpad.net/oxide/+bug/1499419
Reply to: