Gnome-shell 3.34.4 freezes in overview
Affected version
- Fedora 31, up-to-date as of March 24.
- gnome-shell-3.34.4-2.fc31.x86_64
- mutter-3.34.4-2.fc31.x86_64
Bug summary
Gnome-shell sometimes freeze when doing a search in overview.
Steps to reproduce
- Press the Windows/Linux key.
- Search for a string
- Sometimes gnome-shell freezes.
What happened
Gnome-shell freezes.
What did you expect to happen
Gnome-shell shouldn't freeze.
Relevant logs, screenshots, screencasts etc.
(gdb) call (void)gjs_dumpstack()
gnome-shell[534292]: == Stack trace for context 0x55d54c9b1340 ==
gnome-shell[534292]: #0 55d5531ad220 i resource:///org/gnome/shell/ui/search.js:31 (7f8861301b80 @ 226)
gnome-shell[534292]: #1 7ffdb6eac4d0 b resource:///org/gnome/shell/ui/overviewControls.js:414 (7f88616db5e0 @ 27)
(gdb) bt
#0 0x00007f887aaccd9a in shape_run () at /lib64/libpango-1.0.so.0
#1 0x00007f887aacf0f8 in process_item () at /lib64/libpango-1.0.so.0
#2 0x00007f887aad129d in pango_layout_check_lines () at /lib64/libpango-1.0.so.0
#3 0x00007f887aad2d99 in pango_layout_get_extents_internal () at /lib64/libpango-1.0.so.0
#4 0x00007f887be4e3ab in clutter_text_create_layout () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#5 0x00007f887be4e78f in clutter_text_get_preferred_height () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#6 0x00007f887bde323c in clutter_actor_get_preferred_height () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#7 0x00007f887bde34d2 in clutter_actor_get_preferred_size () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#8 0x00007f887bde36ac in clutter_actor_get_transformed_size () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#9 0x00007f887bde3762 in _clutter_actor_compute_resource_scale () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#10 0x00007f887bde388a in clutter_actor_update_resource_scale () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#11 0x00007f887bde38ef in clutter_actor_ensure_resource_scale () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#12 0x00007f887bde3a7a in clutter_actor_get_resource_scale () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#13 0x00007f887be4ec81 in maybe_create_text_layout_with_resource_scale () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#14 0x00007f887be4ed70 in clutter_text_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#15 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#16 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#17 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#18 0x00007f887b95a045 in st_label_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#19 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#20 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#21 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#22 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#23 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#24 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#25 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#26 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#27 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#28 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#29 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#30 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#31 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#32 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#33 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#34 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#35 0x00007f887b94f2f5 in st_bin_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#36 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#37 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#38 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#39 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#40 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#41 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#42 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#43 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#44 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#45 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#46 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#47 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#48 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#49 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#50 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#51 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#52 0x00007f887b94f2f5 in st_bin_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#53 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#54 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#55 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#56 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#57 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#58 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#59 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#60 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#61 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#62 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#63 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#64 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#65 0x00007f887ae80aa8 in ffi_call_unix64 () at /lib64/libffi.so.6
#66 0x00007f887ae802a4 in ffi_call () at /lib64/libffi.so.6
#67 0x00007f887bf4a002 in () at /lib64/libgjs.so.0
#68 0x00007f887bf4bbb1 in () at /lib64/libgjs.so.0
#69 0x00007f8879a4185f in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) () at /lib64/libmozjs-60.so.0
#70 0x00007f8879a43b33 in Interpret(JSContext*, js::RunState&) [clone .lto_priv.0] () at /lib64/libmozjs-60.so.0
#71 0x00007f8879a67ad8 in js::RunScript(JSContext*, js::RunState&) () at /lib64/libmozjs-60.so.0
#72 0x00007f8879a4182a in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) () at /lib64/libmozjs-60.so.0
#73 0x00007f8879a41bed in js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) () at /lib64/libmozjs-60.so.0
#74 0x00007f88797050ac in JS_CallFunction(JSContext*, JS::Handle<JSObject*>, JS::Handle<JSFunction*>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) () at /lib64/libmozjs-60.so.0
#75 0x00007f887bf442c6 in gjs_closure_invoke(_GClosure*, JS::Handle<JSObject*>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>, bool) () at /lib64/libgjs.so.0
#76 0x00007f887bf4c2a8 in () at /lib64/libgjs.so.0
#77 0x00007f887ae80880 in ffi_closure_unix64_inner () at /lib64/libffi.so.6
#78 0x00007f887ae80c10 in ffi_closure_unix64 () at /lib64/libffi.so.6
#79 0x00007f887bdec2b7 in clutter_actor_set_animatable_property () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#80 0x00007f887bdf1596 in _clutter_actor_create_transition () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#81 0x00007f887bdf22d1 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#82 0x00007f887b95e591 in st_scroll_view_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#83 0x00007f887bdf2188 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#84 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#85 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#86 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#87 0x00007f887bdf2188 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#88 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#89 0x00007f887b94f2f5 in st_bin_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#90 0x00007f887bdf2188 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#91 0x00007f887cbae80f in shell_stack_allocate () at /usr/lib64/gnome-shell/libgnome-shell.so
#92 0x00007f887bdf2188 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#93 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#94 0x00007f887be01b3a in clutter_box_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#95 0x00007f887b951474 in st_box_layout_allocate () at /usr/lib64/gnome-shell/libst-1.0.so
#96 0x00007f887bdf2188 in clutter_actor_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#97 0x00007f887bdf2e5e in clutter_actor_allocate_align_fill () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#98 0x00007f887bdfed7c in clutter_bin_layout_allocate () at /usr/lib64/mutter-5/libmutter-clutter-5.so.0
#99 0x00007f887ae80aa8 in ffi_call_unix64 () at /lib64/libffi.so.6
#100 0x00007f887ae802a4 in ffi_call () at /lib64/libffi.so.6
#101 0x00007f887bf4a002 in () at /lib64/libgjs.so.0
#102 0x00007f887bf4bbb1 in () at /lib64/libgjs.so.0
#103 0x00000790d35a1515 in ()
#104 0x0000000000039e07 in ()
#105 0x00007ffdb6eac400 in ()
#106 0x0000000000000000 in ()
If I let the process run for a bit, then interrupt again and get a stack trace again, the process will still be stuck in the same location most of the times. There seems to be an endless loop of st*_allocate() calls.