After updating mesa from 22.2.0-1 to 22.3.0-2 (according to dpkg.log)
earlier today U.S. time as part of a routine upgrade to up-to-date sid,
the greeter stopped appearing, and over the course of the last two hours
we chased it down to that upgrade, which made X.org die with
iris_dri.so (nouveau_drm_screen_create+[three addresses])
iris_dri.so (?+0x0)
iris_dri.so (__driDriverGetExtensions_d3d12+[three addresses])
in the backtrace of a segfault at 0x20.
This may be tangentially related to other d3d12 fuckups in 22.3.0,
like #1025312, given the timeline and d3d12ness.
00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 630
[8086:591b] (rev 04)
Dear Maintainer,
I tried to reconstruct a better backtrace with the
help of the dbgsym packages.
What I find strange is the system has a Intel GPU, but
is calling in some nouveau functions?
Kind regards,
Bernhard
...ebc in nouveau_pushbuf_destroy at
../src/gallium/drivers/nouveau/nouveau_screen.c:244
(nouveau_drm_screen_create+0x4406c)
...319 in nvc0_screen_destroy at
../src/gallium/drivers/nouveau/nvc0/nvc0_screen.c:740
(nouveau_drm_screen_create+0x1e4c9)
...0b6 in nouveau_drm_screen_create at
../src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c:133
(nouveau_drm_screen_create+0x266)
...df6 in pipe_nouveau_create_screen at
../src/gallium/auxiliary/target-helpers/drm_helper.h:144 (0x7f205d0a9df6)
...0c4 in pipe_loader_create_screen_vk at
../src/gallium/auxiliary/pipe-loader/pipe_loader.c:175
(__driDriverGetExtensions_d3d12+0x60ad84)
...dd3 in dri2_init_screen at ../src/gallium/frontends/dri/dri2.c:2265
(__driDriverGetExtensions_d3d12+0x1a93)
...4b5 in driCreateNewScreen2 at ../src/gallium/frontends/dri/dri_util.c:143
(__driDriverGetExtensions_d3d12+0xa175)
...eae in dri_screen_create_dri2 at ../src/gbm/backends/dri/gbm_dri.c:434
(gbm_format_get_name+0xf2e)
...678 in dri_screen_create at ../src/gbm/backends/dri/gbm_dri.c:511
(gbm_format_get_name+0x16f8)
...74c in backend_create_device at ../src/gbm/main/backend.c:101
(0x7f205edc274c)
...884 in gbm_create_device at ../src/gbm/main/gbm.c:138
(gbm_create_device+0x44)
...3c1 in glamor_egl_init at ../../../../../../glamor/glamor_egl.c:947
(glamor_egl_init+0x61)
...733 in try_enable_glamor at
../../../../../../../hw/xfree86/drivers/modesetting/driver.c:945
(0x7f205f118733)
...56a in InitOutput at ../../../../../../hw/xfree86/common/xf86Init.c:490
(InitOutput+0xa2a)
...
The crashing instruction: (the 0x20 offset matches, maybe NULL given to
nouveau_pushbuf_destroy?)
0x75f56ebc : mov0x20(%rax),%rdi
https://sources.debian.org/src/mesa/22.3.0-2/src/gallium/drivers/nouveau/nouveau_screen.c/#L244
241 void
242 nouveau_pushbuf_destroy(struct nouveau_pushbuf **push)
243 {
244FREE((*push)->user_priv);
245nouveau_pushbuf_del(push);
246 }