gnome-shell 3.38 doesn't run on ARM 32bit any longer (in meta_crtc_kms_set_mode)
After upgrading from Fedora 32 to 33 beta. Gnome-shell does not start anymore. gnome-shell / mutter version: 3.37.91-1.fc33.armv7hl
$ coredumpctl debug
PID: 5535 (gnome-shell)
UID: 1000 (odroid)
GID: 1000 (odroid)
Signal: 11 (SEGV)
Timestamp: Thu 2020-08-27 15:56:24 CEST (6min ago)
Command Line: gnome-shell --no-x11 --wayland --mode=user --display-server
Executable: /usr/bin/gnome-shell
Control Group: /user.slice/user-1000.slice/session-8.scope
Unit: session-8.scope
Slice: user-1000.slice
Session: 8
Owner UID: 1000 (odroid)
Boot ID: 025791d43f914c388dd6819001819704
Machine ID: d9da88139d914b9c9716b614e4f0398c
Hostname: odroidxu4
Storage: /var/lib/systemd/coredump/core.gnome-shell.1000.025791d43f914c388dd6819001819704.5535.1598536584000000000000.zst
Message: Process 5535 (gnome-shell) of user 1000 dumped core.
Stack trace of thread 5535:
#0 0x00000000b5de3a2e strlen (libc.so.6 + 0x7da2e)
#1 0x00000000b5dbf6c4 __vfprintf_internal (libc.so.6 + 0x596c4)
#2 0x00000000b5dd0724 __vasprintf_internal (libc.so.6 + 0x6a724)
#3 0x00000000b6a89918 g_vasprintf (libglib-2.0.so.0 + 0xa1918)
GNU gdb (GDB) Fedora 9.2-7.fc33
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "armv7hl-redhat-linux-gnueabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/gnome-shell...
Reading symbols from /usr/lib/debug/usr/bin/gnome-shell-3.37.91-1.fc33.arm.debug...
[New LWP 5535]
[New LWP 5550]
[New LWP 5551]
[New LWP 5554]
[New LWP 5538]
[New LWP 5547]
[New LWP 5555]
[New LWP 5542]
[New LWP 5553]
[New LWP 5544]
[New LWP 5543]
[New LWP 5658]
[New LWP 5540]
[New LWP 5560]
[New LWP 5537]
[New LWP 5548]
[New LWP 5545]
[New LWP 5557]
[New LWP 5552]
[New LWP 5558]
[New LWP 5549]
[New LWP 5539]
[New LWP 5546]
[New LWP 5556]
[New LWP 5559]
[New LWP 5561]
[New LWP 5598]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `gnome-shell --no-x11 --wayland --mode=user --display-server'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 strlen () at ../sysdeps/arm/armv6t2/strlen.S:126
126 ldrd data1a, data1b, [src]
[Current thread is 1 (Thread 0xb0f4c010 (LWP 5535))]
(gdb) bt -full
#0 strlen () at ../sysdeps/arm/armv6t2/strlen.S:126
#1 0xb5dbf6c4 in __vfprintf_internal (s=0xbe939d10, format=0xb6046480 "Setting CRTC (%ld) mode to %s", ap=..., mode_flags=<optimized out>) at vfprintf-internal.c:1647
len = <optimized out>
step0_jumps = {0, 1472, 1396, 4104, 2964, 1900, 1812, 2188, 3088, 1520, 4460, 4388, 3040, 4256, 1988, 4016, 3956, 4092, 2316, 3396, 1228, 948, 1672, 1616, 1368, 616, 3180, 2112, 2036, 4184}
space = <optimized out>
is_short = <optimized out>
use_outdigits = <optimized out>
step1_jumps = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1520, 4460, 4388, 3040, 4256, 1988, 4016, 3956, 4092, 2316, 3396, 1228, 948, 1672, 1616, 1368, 616, 3180, 2112, 2036, 0}
group = <optimized out>
prec = -1301695305
step2_jumps = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4460, 4388, 3040, 4256, 1988, 4016, 3956, 4092, 2316, 3396, 1228, 948, 1672, 1616, 1368, 616, 3180, 2112, 2036, 0}
string = 0x29 <error: Cannot access memory at address 0x29>
left = -1242854280
is_long_double = <optimized out>
width = <optimized out>
step3a_jumps = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4304, 0, 0, 0, 1988, 4016, 3956, 4092, 2316, 0, 0, 0, 0, 1616, 0, 0, 0, 0, 0, 0}
alt = <optimized out>
showsign = <optimized out>
is_long = <optimized out>
is_char = <optimized out>
pad = 0 '\000'
step3b_jumps = {0 <repeats 11 times>, 3040, 0, 0, 1988, 4016, 3956, 4092, 2316, 3396, 1228, 948, 1672, 1616, 1368, 616, 3180, 0, 0, 0}
step4_jumps = {0 <repeats 14 times>, 1988, 4016, 3956, 4092, 2316, 3396, 1228, 948, 1672, 1616, 1368, 616, 3180, 0, 0, 0}
is_negative = <optimized out>
base = <optimized out>
the_arg = {pa_wchar = 111 L'o', pa_int = 111, pa_long_int = 111, pa_long_long_int = 425201762415, pa_u_int = 111, pa_u_long_int = 111, pa_u_long_long_int = 425201762415, pa_double = 2.1007758336040325e-312, pa_long_double = 2.1007758336040325e-312, pa_string = 0x6f <error: Cannot access memory at address 0x6f>, pa_wstring = 0x6f <error: Cannot access memory at address 0x6f>, pa_pointer = 0x6f, pa_user = 0x6f}
spec = <optimized out>
_buffer = {__routine = 0xb5eb859c <main_arena>, __arg = 0x201, __canceltype = 64, __prev = 0x7c}
_avail = <optimized out>
thousands_sep = <optimized out>
grouping = 0xb0f4c550 " \321", <incomplete sequence \364\260>
done = 31
f = 0xb604649c "s"
lead_str_end = <optimized out>
end_of_spec = <optimized out>
work_buffer = "\024\345'\002\320\344N\000\240\356ݵ$\345'\002\000\020\000\000\024\345'\002\000\000\000\000\320\344'\002Y\302u\262I\302u\262\210\344M\000\000\020\000\000\000\000\000\000\001\000\000\000םu\262\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\001\000\000\000\324\344'\002$\345'\002\324\344'\002\000\000\000\000\244\324'\002h\357N\000\064\225L\000\000\000\000\000\000p'\002\000\000\000\000$\345'\002L\357N\000t\215L\000\000\000\000\000\000p'\002\210\344N\000\000\000\000\000$\345'\002\001\265u\262\320\344N\000\210\344M\000\234\344M\000\210\344M\000\220><\263$\345'\002\320\344N\000HLP\000\300+P\000\200@P\000x\352N\000@@"...
workend = 0xbe939ccc " 6911668"
ap_save = {__ap = 0xbe939ea4}
nspecs_done = -1
save_errno = <optimized out>
readonly_format = -1242983652
#2 0xb5dd0724 in __vasprintf_internal (result_ptr=0xbe939df0, format=0xb6046480 "Setting CRTC (%ld) mode to %s", args=..., mode_flags=2) at vasprintf.c:57
string = 0x2241720 "Setting CRTC (6911668) mode to l_tex_coord[0]\nl_layer;\n"
sf =
{_sbf = {_f = {_flags = -72515584, _IO_read_ptr = 0x2241720 "Setting CRTC (6911668) mode to l_tex_coord[0]\nl_layer;\n", _IO_read_end = 0x2241720 "Setting CRTC (6911668) mode to l_tex_coord[0]\nl_layer;\n", _IO_read_base = 0x2241720 "Setting CRTC (6911668) mode to l_tex_coord[0]\nl_layer;\n", _IO_write_base = 0x2241720 "Setting CRTC (6911668) mode to l_tex_coord[0]\nl_layer;\n", _IO_write_ptr = 0x224173f "l_tex_coord[0]\nl_layer;\n", _IO_write_end = 0x2241784 "Q", _IO_buf_base = 0x2241720 "Setting CRTC (6911668) mode to l_tex_coord[0]\nl_layer;\n", _IO_buf_end = 0x2241784 "Q", _IO_save_base = 0x0, _IO_backup_base = 0x0, _IO_save_end = 0x0, _markers = 0x0, _chain = 0x0, _fileno = 1920, _flags2 = 128, _old_offset = 47, _cur_column = 0, _vtable_offset = 0 '\000', _shortbuf = "", _lock = 0x0, _offset = 4294967296, _codecvt = 0x0, _wide_data = 0xffffffff, _freeres_list = 0x0, _freeres_buf = 0x1e00, __pad5 = 0, _mode = -1, _unused2 = '\000' <repeats 39 times>}, vtable = 0xb5eb920c <_IO_str_jumps>}, _s = {_allocate_buffer_unused = 0xb5ddece4 <__GI___libc_malloc>, _free_buffer_unused = 0xb5ddf3b0 <__GI___libc_free>}}
ret = <optimized out>
needed = <optimized out>
allocated = <optimized out>
#3 0xb6a89918 in g_vasprintf () at /lib/libglib-2.0.so.0
#4 0xb6a5cfcc in g_strdup_vprintf () at /lib/libglib-2.0.so.0
#5 0xb6a41efc in g_logv () at /lib/libglib-2.0.so.0
#6 0xb6a4235c in g_log () at /lib/libglib-2.0.so.0
#7 0xb5ffeed4 in meta_crtc_kms_set_mode () at /lib/libmutter-7.so.0
#8 0xb6009274 in ensure_crtc_modes () at /lib/libmutter-7.so.0
#9 0xb600a778 in meta_onscreen_native_swap_buffers_with_damage.lto_priv () at /lib/libmutter-7.so.0
#10 0xb5a8910c in cogl_onscreen_swap_buffers_with_damage () at /usr/lib/mutter-7/libmutter-cogl-7.so.0
#11 0xb6166fec in swap_framebuffer () at /usr/lib/mutter-7/libmutter-clutter-7.so.0
#12 0xb6167d58 in clutter_stage_cogl_redraw_view () at /usr/lib/mutter-7/libmutter-clutter-7.so.0
#13 0xb6149868 in handle_frame_clock_frame () at /usr/lib/mutter-7/libmutter-clutter-7.so.0
#14 0xb6114d40 in frame_clock_source_dispatch () at /usr/lib/mutter-7/libmutter-clutter-7.so.0
#15 0xb6a3a28c in g_main_context_dispatch () at /lib/libglib-2.0.so.0
#16 0xb6a92bb4 in g_main_context_iterate.constprop () at /lib/libglib-2.0.so.0
#17 0xb6a398c4 in g_main_loop_run () at /lib/libglib-2.0.so.0
#18 0xb5f8ddac in meta_run () at /lib/libmutter-7.so.0
#19 0x0044ba3c in main (argc=<optimized out>, argv=<optimized out>) at ../src/main.c:550
ctx = <optimized out>
error = 0x0
ecode = <optimized out>