Hi Simon,
On 06/01/2025 11:30, Simon McVittie wrote:
On Sat, 04 Jan 2025 at 16:30:56 +0100, Lee Garrett wrote:
I was able to catch a coredump which I can't attach due to size.
Can you get a backtrace from this core dump, with gnome-shell and mutter
debug symbols available? That's usually the most important information.
Sure:
#0 meta_kms_impl_device_get_fd (impl_device=0x0)
at ../src/backends/native/meta-kms-impl-device.c:962
#1 0x00007f8369790f26 in meta_kms_mode_create_blob_id (
mode=mode@entry=0x5630f7579510, error=error@entry=0x7ffe2517e198)
at ../src/backends/native/meta-kms-mode.c:53
#2 0x00007f836978a3c4 in process_mode_set (error=0x7ffe2517e198, user_data=0x0,
update_entry=0x5630f799cff0, blob_ids=0x5630f9de26a0, req=0x5630f902b9a0,
update=0x5630f95d8f20, impl_device=0x5630f74409f0)
at ../src/backends/native/meta-kms-impl-device-atomic.c:307
#3 process_entries (error=0x7ffe2517e198, func=<optimized out>, user_data=0x0,
entries=<optimized out>, blob_ids=0x5630f9de26a0, req=0x5630f902b9a0,
update=0x5630f95d8f20, impl_device=0x5630f74409f0)
at ../src/backends/native/meta-kms-impl-device-atomic.c:767
#4 meta_kms_impl_device_atomic_process_update (impl_device=0x5630f74409f0,
update=0x5630f95d8f20, flags=META_KMS_UPDATE_FLAG_NONE)
at ../src/backends/native/meta-kms-impl-device-atomic.c:981
#5 0x00007f836979034f in meta_kms_impl_device_process_update (
impl_device=0x5630f74409f0, update=0x5630f95d8f20,
flags=META_KMS_UPDATE_FLAG_NONE)
at ../src/backends/native/meta-kms-impl-device.c:992
#6 0x00007f8369793cde in meta_kms_run_impl_task_sync (kms=0x5630f7436670,
func=func@entry=0x7f83697888c0 <process_update_in_impl>,
user_data=user_data@entry=0x7ffe2517e2f0, error=error@entry=0x0)
at ../src/backends/native/meta-kms.c:532
#7 0x00007f8369788de1 in meta_kms_device_process_update_sync (
device=device@entry=0x5630f7426ca0, update=update@entry=0x5630f95d8f20,
flags=flags@entry=META_KMS_UPDATE_FLAG_NONE)
at ../src/backends/native/meta-kms-device.c:316
#8 0x00007f836979350a in meta_kms_post_update_sync
(kms=kms@entry=0x5630f7436670,
update=0x5630f95d8f20, flags=flags@entry=META_KMS_UPDATE_FLAG_NONE)
at ../src/backends/native/meta-kms.c:366
#9 0x00007f8369793ab4 in meta_kms_post_pending_update_sync (
kms=kms@entry=0x5630f7436670, device=device@entry=0x5630f7426ca0,
flags=flags@entry=META_KMS_UPDATE_FLAG_NONE)
at ../src/backends/native/meta-kms.c:334
#10 0x00007f836979da9d in meta_renderer_native_post_mode_set_updates (
renderer_native=renderer_native@entry=0x5630f75a2300)
at ../src/backends/native/meta-renderer-native.c:846
#11 0x00007f836979677a in try_post_latest_swap (onscreen=<optimized out>)
at ../src/backends/native/meta-onscreen-native.c:1286
--Type <RET> for more, q to quit, c to continue without paging--c
#12 0x00007f8369796fe4 in meta_onscreen_native_swap_buffers_with_damage (
onscreen=0x5630f77911a0, rectangles=0x7ffe2517e610, n_rectangles=0,
frame_info=<optimized out>, user_data=0x7ffe2517e83c)
at ../src/backends/native/meta-onscreen-native.c:1185
#13 0x00007f83692bebaf in cogl_onscreen_swap_buffers_with_damage (
onscreen=onscreen@entry=0x5630f77911a0,
rectangles=rectangles@entry=0x7ffe2517e610,
n_rectangles=n_rectangles@entry=0,
info=info@entry=0x5630faa789e0, user_data=user_data@entry=0x7ffe2517e83c)
at ../cogl/cogl/cogl-onscreen.c:341
#14 0x00007f83696a94a6 in swap_framebuffer (
stage_window=stage_window@entry=0x5630f75a9c10,
stage_view=stage_view@entry=0x5630f75a1970,
swap_region=swap_region@entry=0x5630faabf6d0,
swap_with_damage=swap_with_damage@entry=0, frame=frame@entry=0x7ffe2517e83c)
at ../src/backends/meta-stage-impl.c:316
#15 0x00007f83696a9da7 in meta_stage_impl_redraw_view_primary (
frame=0x7ffe2517e83c, stage_view=<optimized out>, stage_impl=<optimized
out>)
at ../src/backends/meta-stage-impl.c:678
#16 meta_stage_impl_redraw_view (stage_window=<optimized out>,
stage_view=<optimized out>, frame=0x7ffe2517e83c)
at ../src/backends/meta-stage-impl.c:754
#17 0x00007f83697a5036 in meta_stage_native_redraw_view (
stage_window=<optimized out>, view=0x5630f75a1970, frame=0x7ffe2517e83c)
at ../src/backends/native/meta-stage-native.c:139
#18 0x00007f8369a32df1 in handle_frame_clock_frame (frame_clock=0x5630f7792a30,
frame_count=<optimized out>, user_data=0x5630f75a1970)
at ../clutter/clutter/clutter-stage-view.c:1253
#19 0x00007f8369a02ea7 in clutter_frame_clock_dispatch (time_us=<optimized out>,
frame_clock=0x5630f7792a30) at ../clutter/clutter/clutter-frame-clock.c:832
#20 frame_clock_source_dispatch (source=<optimized out>, callback=<optimized
out>,
user_data=<optimized out>) at ../clutter/clutter/clutter-frame-clock.c:888
#21 0x00007f836a53c7a9 in g_main_dispatch (context=0x5630f742f170)
at ../../../glib/gmain.c:3454
#22 g_main_context_dispatch (context=context@entry=0x5630f742f170)
at ../../../glib/gmain.c:4172
#23 0x00007f836a53ca38 in g_main_context_iterate (context=0x5630f742f170,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
at ../../../glib/gmain.c:4248
#24 0x00007f836a53ccef in g_main_loop_run (loop=0x5630f7c93300)
at ../../../glib/gmain.c:4448
#25 0x00007f83696d7185 in meta_context_run_main_loop (
context=context@entry=0x5630f742a0c0, error=error@entry=0x7ffe2517eac0)
at ../src/core/meta-context.c:465
#26 0x00005630c1c73914 in main (argc=<optimized out>, argv=<optimized out>)
at ../src/main.c:582
Program terminated with signal SIGSEGV, Segmentation fault.
I've poked around the code a bit, but didn't spend enough time to grasp the code
path surrounding the error.
https://wiki.debian.org/HowToGetABacktrace
(I assume that reproducing this would require hardware with the privacy
screen feature?)
I'm not sure how the feature is detected. I assume you can only really test it
on hardware that has it, yeah. That would be certain HP and Lenovo laptops,
probably other brands, too. I'm willing to test any libmutter feature branches
you throw my way. :)
Thanks,
smcv
Thanks,
Lee