All GTK apps crash upon launching on ARM v7 (32bit)
I'm running Gnome 42 beta on Fedora 36 on my ARM v7 board (Odroid XU4).
It uses the Mali T-628 wayland drivers from ARM.
After flashing the Fedora 36 ARM image everything worked nice, however after a dnf upgrade all GTK apps are now crashing. gnome-software, gnome-control-center etc.
Software versions:
gtk4-4.6.1-2.fc36.armv7hl
gtk3-3.24.31-2.fc36.armv7hl
gnome-shell-42~beta-4.fc36.armv7hl
mutter-42~beta-1.fc36.armv7hl
gnome-control-center-42~beta-6.fc36.armv7hl
gnome-software-42~beta-2.fc36.armv7hl
glibc-2.35-3.fc36.armv7hl
They all seem to crash with the same segfault:
(gdb) bt -full
#0 gtk_css_tokenizer_read_token.constprop.0 (
tokenizer=tokenizer@entry=0x827590, token=token@entry=0x82d040,
error=error@entry=0xbeffeb48) at ../gtk/css/gtkcsstokenizer.c:1297
No locals.
#1 0xb68308b0 in gtk_css_parser_ensure_token (self=0x82d008)
at ../gtk/css/gtkcssparser.c:282
error = 0x0
error = <optimized out>
#2 gtk_css_parser_peek_token (self=self@entry=0x82d008)
at ../gtk/css/gtkcssparser.c:297
eof_token = {type = GTK_CSS_TOKEN_EOF, string = {
type = GTK_CSS_TOKEN_EOF, string = 0x0}, delim = {
type = GTK_CSS_TOKEN_EOF, delim = 0}, number = {
type = GTK_CSS_TOKEN_EOF, number = 0}, dimension = {
type = GTK_CSS_TOKEN_EOF, value = 0, dimension = 0x0}}
#3 0xb6830ed8 in gtk_css_parser_get_token (self=0x82d008)
at ../gtk/css/gtkcssparser.c:316
token = <optimized out>
#4 0xb659213c in gtk_css_parser_has_token (token_type=GTK_CSS_TOKEN_EOF,
self=<optimized out>) at ../gtk/css/gtkcssparser.c:714
token = <optimized out>
token = <optimized out>
#5 parse_stylesheet (scanner=0xad201160) at ../gtk/gtkcssprovider.c:949
No locals.
#6 gtk_css_provider_load_internal (self=0x7c4eb0, parent=parent@entry=0xac86a510, file=0x22, file@entry=0xac801a00, bytes=<optimized out>, bytes@entry=0x0) at ../gtk/gtkcssprovider.c:1069
scanner = 0xad201160
before = -28888575991457744
#7 0xb659270c in parse_import (scanner=0xac86a510) at ../gtk/gtkcssprovider.c:680
file = 0xac801a00
file = <optimized out>
url = <optimized out>
url = <optimized out>
path = <optimized out>
_pp = <optimized out>
_ptr = <optimized out>
#8 parse_at_keyword (scanner=0xac86a510) at ../gtk/gtkcssprovider.c:763
No locals.
#9 parse_statement (scanner=0xac86a510) at ../gtk/gtkcssprovider.c:941
No locals.
#10 parse_stylesheet (scanner=<optimized out>) at ../gtk/gtkcssprovider.c:958
No locals.
#11 gtk_css_provider_load_internal (self=self@entry=0x7c4eb0, parent=parent@entry=0x0, file=0x825830, file@entry=0xac812250, bytes=<optimized out>, bytes@entry=0x0) at ../gtk/gtkcssprovider.c:1069
scanner = <optimized out>
before = -1090523993226831520
#12 0xb65931d0 in gtk_css_provider_load_from_file (css_provider=css_provider@entry=0x7c4eb0, file=file@entry=0xac812250) at ../gtk/gtkcssprovider.c:1141
__func__ = "gtk_css_provider_load_from_file"
#13 0xb6593398 in gtk_css_provider_load_from_resource (css_provider=0x7c4eb0, resource_path=<optimized out>) at ../gtk/gtkcssprovider.c:1199
file = 0xac812250
uri = 0x7d7cd8 "\330\301\202"
escaped = <optimized out>
__func__ = "gtk_css_provider_load_from_resource"
#14 0xb6593738 in gtk_css_provider_load_named (provider=0x7c4eb0, name=<optimized out>, variant=<optimized out>) at ../gtk/gtkcssprovider.c:1355
path = <optimized out>
resource_path = 0x824150 "/org/gtk/libgtk/theme/Default/gtk.css"
__func__ = "gtk_css_provider_load_named"
#15 0xb6697c2c in settings_update_theme (settings=settings@entry=0x7c4e30) at ../gtk/gtksettings.c:1897
theme_name = 0x821d90 "Adwaita"
theme_variant = 0x0
theme_dir = <optimized out>
path = <optimized out>
#16 0xb6698480 in settings_init_style (settings=0x7c4e30) at ../gtk/gtksettings.c:1272
cascade = 0xad206378
css_provider = <optimized out>
cascade = <optimized out>
_g_boolean_var_ = <optimized out>
css_path = <optimized out>
#17 gtk_settings_create_for_display (display=<optimized out>) at ../gtk/gtksettings.c:1313
settings = 0x7c4e30
settings = <optimized out>
#18 gtk_settings_get_for_display (display=<optimized out>) at ../gtk/gtksettings.c:1348
i = <optimized out>
__func__ = "gtk_settings_get_for_display"
#19 0xb65efa08 in gtk_icon_theme_set_display (self=0x8290a8, display=0x7f1020) at ../gtk/gtkicontheme.c:1186
__func__ = "gtk_icon_theme_set_display"
#20 0xb65efd38 in gtk_icon_theme_get_for_display (display=0x7f1020) at ../gtk/gtkicontheme.c:869
self = 0x8290a8
__func__ = "gtk_icon_theme_get_for_display"
#21 0xb652c754 in gtk_application_load_resources (application=0x7c7888) at ../gtk/gtkapplication.c:202
default_theme = <optimized out>
iconspath = <optimized out>
priv = 0x7c7810
base_path = 0x7cb0e0 "/org/gnome/Settings"
optional_slash = 0xb695af38 "/"
priv = <optimized out>
base_path = <optimized out>
optional_slash = <optimized out>
default_theme = <optimized out>
iconspath = <optimized out>
menuspath = <optimized out>
menu = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
path = <optimized out>
accels = <optimized out>
#22 gtk_application_startup (g_application=0x7c7888) at ../gtk/gtkapplication.c:268
application = 0x7c7888
priv = <optimized out>
before = <optimized out>
before2 = <optimized out>
#23 0xb6b6cb90 in adw_application_startup (application=0x7c7888) at ../src/adw-application.c:176
self = 0x7c7888
#24 0x0044b614 in cc_application_startup (application=0x7c7888) at ../shell/cc-application.c:226
self = 0x7c7888
help_accels = {0x5866b8 "F1", 0x0}
provider = 0x0
#25 0xb6dcf580 in _g_closure_invoke_va (param_types=<optimized out>, n_params=<optimized out>, args=..., instance=<optimized out>, return_value=<optimized out>, closure=0x7c27e8) at ../gobject/gclosure.c:893
marshal = 0xb6daca64 <g_type_class_meta_marshalv>
marshal_data = <optimized out>
in_marshal = <optimized out>
real_closure = 0x7c27d8
real_closure = <optimized out>
__func__ = <optimized out>
_g_boolean_var_ = <optimized out>
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = <optimized out>
_g_boolean_var_ = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = <optimized out>
gaicae_oldval = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = <optimized out>
gaicae_oldval = <optimized out>
#26 g_signal_emit_valist (instance=instance@entry=0x7c7888, signal_id=<optimized out>, detail=detail@entry=0, var_args=..., var_args@entry=...) at ../gobject/gsignal.c:3407
return_accu = <optimized out>
accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
accumulator = <optimized out>
emission = {next = 0x0, instance = 0x7c7888, ihint = {signal_id = 6, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 8132336}
signal_id = <optimized out>
instance_type = <optimized out>
emission_return = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
rtype = <optimized out>
static_scope = <optimized out>
fastpath_handler = <optimized out>
closure = <optimized out>
run_type = <optimized out>
hlist = <optimized out>
l = <optimized out>
fastpath = <optimized out>
instance_and_params = <optimized out>
signal_return_type = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
n_params = <optimized out>
__func__ = "g_signal_emit_valist"
#27 0xb6dcf650 in g_signal_emit (instance=instance@entry=0x7c7888, signal_id=<optimized out>, detail=0) at ../gobject/gsignal.c:3554
var_args = {__ap = 0xbeffef8c}
#28 0xb6eed6d8 in g_application_register (application=application@entry=0x7c7888, cancellable=cancellable@entry=0x0, error=error@entry=0x79efc0) at ../gio/gapplication.c:2210
__func__ = "g_application_register"
#29 0xb6eee2d0 in g_application_real_local_command_line (application=0x7c7888, arguments=0xbefff0b4, exit_status=0xbefff0b0) at ../gio/gapplication.c:1112
error = 0x0
options = 0x79ef30
n_args = <optimized out>
#30 0xb6eee8bc in g_application_run (application=0x7c7888, argc=<optimized out>, argv=0xbefff264) at ../gio/gapplication.c:2539
arguments = 0x79d0f8
status = -1
context = 0x7cb0f8
acquired_context = <optimized out>
__func__ = "g_application_run"
#31 0x00441274 in main (argc=1, argv=0xbefff264) at ../shell/main.c:57
application = 0x7c7888
I hope this can be fixed before the final release.
If there's anything else I can provide, please let me know.
Edited by Gino Badouri