Fedora installer (anaconda) crashes early with glib 2.77.0 due to "Attempt to unlock mutex that was not locked", when it runs `hwclock` and changes the system time
Fedora openQA testing of the new version of glib (2.77.0) found that it reliably causes the installer (anaconda) to crash during startup. One of the things it does when starting up is run hwclock --hctosys --utc
, via Python subprocess
. This (in the openQA tests at least) makes the system clock change - four hours backwards, at present, for the affected tests. Right when this happens, anaconda now crashes.
This is the best backtrace I could get:
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
tid = <optimized out>
ret = 0
pd = <optimized out>
old_mask = {__val = {139781760353976}}
ret = <optimized out>
#1 0x00007f2179890893 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
No locals.
#2 0x00007f217983e8ee in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26
ret = <optimized out>
#3 <signal handler called>
No locals.
#4 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
tid = <optimized out>
ret = 0
pd = <optimized out>
old_mask = {__val = {139781506349640}}
ret = <optimized out>
#5 0x00007f2179890893 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
No locals.
#6 0x00007f217983e8ee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
ret = <optimized out>
#7 0x00007f21798268ff in __GI_abort () at abort.c:79
save_stage = 1
act = {__sigaction_handler = {sa_handler = 0x20, sa_sigaction = 0x20}, sa_mask = {__val = {44, 140736759380416, 139781749631713, 139781187051040, 1, 0, 139781751411936, 44, 44, 1, 139781506349640, 140736759380496, 139781749580242, 139781506475168, 139781751009840, 140736759380496}}, sa_flags = 1476606928, sa_restorer = 0x7fffd48cbc80}
#8 0x00007f216b00e968 in g_mutex_unlock_slowpath (mutex=<optimized out>, prev=<optimized out>) at ../glib/gthread-posix.c:1404
No locals.
#9 0x00007f2160fe60fb in _ctx_integ_source_reacquire (ctx_src=ctx_src@entry=0x7f2158033bd0) at src/libnm-glib-aux/nm-shared-utils.c:4953
No locals.
#10 0x00007f2160fee840 in _ctx_integ_source_prepare (source=source@entry=0x7f2158033bd0, out_timeout=out_timeout@entry=0x7fffd48cbc64) at src/libnm-glib-aux/nm-shared-utils.c:4983
ctx_src = 0x7f2158033bd0
max_priority = 0
timeout = -1
any_ready = <optimized out>
h_iter = {dummy1 = 0x7f216b0190be, dummy2 = 0x7f216b016720 <sysprof_collector_get+80>, dummy3 = 0x7f216b0190be, dummy4 = -728974512, dummy5 = 32767, dummy6 = 0x7f216b0190be}
poll_data = 0xf42e6480c76a7000
fds_changed = <optimized out>
new_fds_stack = {{fd = -728974528, events = 32767, revents = 0}, {fd = 1795256558, events = 32545, revents = 0}, {fd = 171720544, events = 21893, revents = 0}, {fd = 2458, events = 0, revents = 0}, {fd = -1241438050, events = 25, revents = 0}, {fd = -949325824, events = 25728, revents = 62510}, {fd = 171684096, events = 21893, revents = 0}, {fd = -136, events = 65535, revents = 65535}, {fd = 0, events = 0, revents = 0}, {fd = 173184880, events = 21893, revents = 0}, {fd = 0, events = 0, revents = 0}, {fd = 173106184, events = 21893, revents = 0}, {fd = -728974496, events = 32767, revents = 0}, {fd = -949325824, events = 25728, revents = 62510}, {fd = 0, events = 0, revents = 0}, {fd = -949325824, events = 25728, revents = 62510}, {fd = 0, events = 0, revents = 0}, {fd = 1795700591, events = 32545, revents = 0}, {fd = 1795264702, events = 32545, revents = 0}, {fd = -728974336, events = 32767, revents = 0}, {fd = -1241440602, events = 25, revents = 0}, {fd = 180030144, events = 21893, revents = 0}, {fd = -728974352, events = 32767, revents = 0}, {fd = 1795256558, events = 32545, revents = 0}, {fd = -728974400, events = 32767, revents = 0}, {fd = 5763, events = 0, revents = 0}, {fd = -1241440602, events = 25, revents = 0}, {fd = 1795700569, events = 32545, revents = 0}, {fd = -728974400, events = 32767, revents = 0}, {fd = 173106160, events = 21893, revents = 0}, {fd = 163540656, events = 21893, revents = 0}, {fd = -949325824, events = 25728, revents = 62510}, {fd = -728974368, events = 32767, revents = 0}, {fd = 163540656, events = 21893, revents = 0}, {fd = 1, events = 0, revents = 0}, {fd = 1795700533, events = 32545, revents = 0}, {fd = -1241440602, events = 25, revents = 0}}
new_fds_heap = 0x0
new_fds = <optimized out>
new_fds_len = <optimized out>
new_fds_alloc = <optimized out>
i = <optimized out>
_ts = <optimized out>
__unique_prefix_V392 = <optimized out>
__unique_prefix_V397 = <optimized out>
__unique_prefix_V398 = <optimized out>
_ts = <optimized out>
_ts = <optimized out>
_ts = <optimized out>
_ts = <optimized out>
#11 0x00007f216afb6a66 in g_main_context_prepare_unlocked (context=0x558509bf6eb0, priority=0x7fffd48cbd28) at ../glib/gmain.c:3842
begin_time_nsec = 110427715368
result = <optimized out>
prepare = 0x7f2160fee800 <_ctx_integ_source_prepare>
source_timeout = -1
i = <optimized out>
n_ready = 0
current_priority = 2147483647
source = 0x7f2158033bd0
iter = {context = 0x558509bf6eb0, may_modify = 1, current_list = 0x7f2158002be0, source = 0x7f2158033bd0}
#12 0x00007f216b0111e0 in g_main_context_iterate_unlocked.isra.0 (context=0x558509bf6eb0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4332
max_priority = 0
timeout = 0
some_ready = <optimized out>
nfds = <optimized out>
allocated_nfds = 4
fds = <optimized out>
begin_time_nsec = 110427714935
#13 0x00007f216afb824f in g_main_loop_run (loop=0x55850abb0a80) at ../glib/gmain.c:4553
self = <optimized out>
__func__ = "g_main_loop_run"
#14 0x00007f2153406975 in gtk_main () at ../gtk/gtkmain.c:1329
loop = 0x55850abb0a80
#15 0x00007f216aecf056 in ffi_call_unix64 () at ../src/x86/unix64.S:104
No locals.
#16 0x00007f216aecb5ef in ffi_call_int (cif=cif@entry=0x55850abb0838, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
classes = {171805808, 21893, X86_64_NO_CLASS, X86_64_NO_CLASS}
stack = <optimized out>
argp = 0x7fffd48cbdd0 ""
arg_types = <optimized out>
gprcount = 0
ssecount = <optimized out>
ngpr = 32545
nsse = 2039082996
i = <optimized out>
avn = <optimized out>
flags = <optimized out>
reg_args = <optimized out>
#17 0x00007f216aece3fe in ffi_call (cif=cif@entry=0x55850abb0838, fn=<optimized out>, rvalue=rvalue@entry=0x7fffd48cbfb8, avalue=<optimized out>) at ../src/x86/ffi64.c:710
arg_types = 0x55850abb0a10
i = <optimized out>
nargs = 0
max_reg_struct_size = <optimized out>
#18 0x00007f216b0d4bbb in pygi_invoke_c_callable (function_cache=0x55850abb0790, state=<optimized out>, py_args=<optimized out>, py_kwargs=<optimized out>) at ../gi/pygi-invoke.c:684
_save = 0x7f217a2478b0 <_PyRuntime+459824>
cache = 0x55850abb0790
ffi_return_value = {v_boolean = 0, v_int8 = 0 '\000', v_uint8 = 0 '\000', v_int16 = 0, v_uint16 = 0, v_int32 = 0, v_uint32 = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_short = 0, v_ushort = 0, v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_ssize = 0, v_size = 0, v_string = 0x0, v_pointer = 0x0}
ret = 0x0
#19 0x00007f216b0d310a in pygi_function_cache_invoke (py_kwargs=0x7f2150ab06c0, py_args=0x7f217a1e9f88 <_PyRuntime+76552>, function_cache=<optimized out>) at ../gi/pygi-cache.c:862
state = {py_in_args = 0x7f217a1e9f88 <_PyRuntime+76552>, n_py_in_args = 0, n_args = 0, ffi_args = 0x0, args = 0x0, return_arg = {v_boolean = 0, v_int8 = 0 '\000', v_uint8 = 0 '\000', v_int16 = 0, v_uint16 = 0, v_int32 = 0, v_uint32 = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_short = 0, v_ushort = 0, v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_ssize = 0, v_size = 0, v_string = 0x0, v_pointer = 0x0}, to_py_return_arg_cleanup_data = 0x0, error = 0x0, failed = 0, user_data = 0x0, function_ptr = 0x7f21534068f0 <gtk_main>}
#20 pygi_callable_info_invoke (user_data=0x0, cache=<optimized out>, kwargs=0x7f2150ab06c0, py_args=0x7f217a1e9f88 <_PyRuntime+76552>, info=<optimized out>) at ../gi/pygi-invoke.c:727
No locals.
#21 _wrap_g_callable_info_invoke (self=<optimized out>, py_args=0x7f217a1e9f88 <_PyRuntime+76552>, kwargs=0x7f2150ab06c0) at ../gi/pygi-invoke.c:764
No locals.
#22 0x00007f2179e21c29 in _PyObject_Call (tstate=0x7f217a2478b0 <_PyRuntime+459824>, callable=0x7f21619f9230, args=0x7f217a1e9f88 <_PyRuntime+76552>, kwargs=<optimized out>) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Objects/call.c:367
call = 0x7f216b0cae20 <_function_info_call>
result = <optimized out>
vector_func = <optimized out>
#23 0x00007f2179dfd131 in PyCFunction_Call (kwargs=0x7f2150ab06c0, args=0x7f217a1e9f88 <_PyRuntime+76552>, callable=0x7f21619f9230) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Objects/call.c:387
tstate = <optimized out>
#24 _PyEval_EvalFrameDefault (tstate=<optimized out>, frame=<optimized out>, throwflag=<optimized out>) at Python/bytecodes.c:3193
kwargs = 0x7f2150ab06c0
__atomic_load_tmp = <optimized out>
callargs = 0x7f217a1e9f88 <_PyRuntime+76552>
func = 0x7f21619f9230
op = <optimized out>
dealloc = <optimized out>
op = <optimized out>
dealloc = <optimized out>
xop = <optimized out>
op = <optimized out>
dealloc = <optimized out>
result = <optimized out>
__atomic_load_ptr = <optimized out>
opcode = 142 '\216'
oparg = <optimized out>
cframe = {current_frame = 0x7f217a3ad198, previous = 0x7f217a2479c0 <_PyRuntime+460096>}
entry_frame = {f_code = 0x7f2179b1e730, previous = 0x0, f_funcobj = 0x55850972b310, f_globals = 0x0, f_builtins = 0x7f217a1d2d80 <PyFunction_Type>, f_locals = 0x0, frame_obj = 0x0, prev_instr = 0x7f2179b1e7f0, stacktop = 0, return_offset = 0, owner = 3 '\003', localsplus = {0x7f217a2478b0 <_PyRuntime+459824>}}
kwnames = 0x0
prev_cframe = <optimized out>
next_instr = 0x7f2161941f00
stack_pointer = <optimized out>
exception_unwind = <optimized out>
dying = <optimized out>
__func__ = "_PyEval_EvalFrameDefault"
opcode_targets = {0x7f2179d114ca <_PyEval_EvalFrameDefault-920326>, 0x7f2179df2b56 <_PyEval_EvalFrameDefault+2950>, 0x7f2179df276a <_PyEval_EvalFrameDefault+1946>, 0x7f2179df2ba0 <_PyEval_EvalFrameDefault+3024>, 0x7f2179df9315 <_PyEval_EvalFrameDefault+29509>, 0x7f2179dfae9d <_PyEval_EvalFrameDefault+36557>, 0x7f2179df6db0 <_PyEval_EvalFrameDefault+19936>, 0x7f2179df4095 <_PyEval_EvalFrameDefault+8389>, 0x7f2179df6e55 <_PyEval_EvalFrameDefault+20101>, 0x7f2179df4e80 <_PyEval_EvalFrameDefault+11952>, 0x7f2179df9046 <_PyEval_EvalFrameDefault+28790>, 0x7f2179df7f61 <_PyEval_EvalFrameDefault+24465>, 0x7f2179df8900 <_PyEval_EvalFrameDefault+26928>, 0x7f2179df357d <_PyEval_EvalFrameDefault+5549>, 0x7f2179df4fd7 <_PyEval_EvalFrameDefault+12295>, 0x7f2179df9ea3 <_PyEval_EvalFrameDefault+32467>, 0x7f2179df5abe <_PyEval_EvalFrameDefault+15086>, 0x7f2179d114bb <_PyEval_EvalFrameDefault-920341>, 0x7f2179df464b <_PyEval_EvalFrameDefault+9851>, 0x7f2179df5ba4 <_PyEval_EvalFrameDefault+15316>, 0x7f2179df8ec8 <_PyEval_EvalFrameDefault+28408>, 0x7f2179df48a8 <_PyEval_EvalFrameDefault+10456>, 0x7f2179df6cca <_PyEval_EvalFrameDefault+19706>, 0x7f2179df2e89 <_PyEval_EvalFrameDefault+3769>, 0x7f2179df4b69 <_PyEval_EvalFrameDefault+11161>, 0x7f2179df381f <_PyEval_EvalFrameDefault+6223>, 0x7f2179df65ea <_PyEval_EvalFrameDefault+17946>, 0x7f2179df8d9e <_PyEval_EvalFrameDefault+28110>, 0x7f2179df47bb <_PyEval_EvalFrameDefault+10219>, 0x7f2179df5491 <_PyEval_EvalFrameDefault+13505>, 0x7f2179df9e0e <_PyEval_EvalFrameDefault+32318>, 0x7f2179dfab3d <_PyEval_EvalFrameDefault+35693>, 0x7f2179dfaae4 <_PyEval_EvalFrameDefault+35604>, 0x7f2179dfaa67 <_PyEval_EvalFrameDefault+35479>, 0x7f2179df5c72 <_PyEval_EvalFrameDefault+15522>, 0x7f2179df7ac2 <_PyEval_EvalFrameDefault+23282>, 0x7f2179df75e8 <_PyEval_EvalFrameDefault+22040>, 0x7f2179d0e18e <_PyEval_EvalFrameDefault-933442>, 0x7f2179df57d7 <_PyEval_EvalFrameDefault+14343>, 0x7f2179df3621 <_PyEval_EvalFrameDefault+5713>, 0x7f2179df2be8 <_PyEval_EvalFrameDefault+3096>, 0x7f2179df3b65 <_PyEval_EvalFrameDefault+7061>, 0x7f2179df49e5 <_PyEval_EvalFrameDefault+10773>, 0x7f2179df63d8 <_PyEval_EvalFrameDefault+17416>, 0x7f2179df3db1 <_PyEval_EvalFrameDefault+7649>, 0x7f2179df51ff <_PyEval_EvalFrameDefault+12847>, 0x7f2179df6f5c <_PyEval_EvalFrameDefault+20364>, 0x7f2179df7827 <_PyEval_EvalFrameDefault+22615>, 0x7f2179df8bf8 <_PyEval_EvalFrameDefault+27688>, 0x7f2179df9a6f <_PyEval_EvalFrameDefault+31391>, 0x7f2179d0ee3b <_PyEval_EvalFrameDefault-930197>, 0x7f2179d0ed33 <_PyEval_EvalFrameDefault-930461>, 0x7f2179d0d806 <_PyEval_EvalFrameDefault-935882>, 0x7f2179df8223 <_PyEval_EvalFrameDefault+25171>, 0x7f2179d0f61a <_PyEval_EvalFrameDefault-928182>, 0x7f2179dfa92b <_PyEval_EvalFrameDefault+35163>, 0x7f2179df3a98 <_PyEval_EvalFrameDefault+6856>, 0x7f2179df60b4 <_PyEval_EvalFrameDefault+16612>, 0x7f2179df2840 <_PyEval_EvalFrameDefault+2160>, 0x7f2179df53c3 <_PyEval_EvalFrameDefault+13299>, 0x7f2179df7ff3 <_PyEval_EvalFrameDefault+24611>, 0x7f2179df89ed <_PyEval_EvalFrameDefault+27165>, 0x7f2179df415c <_PyEval_EvalFrameDefault+8588>, 0x7f2179df5f57 <_PyEval_EvalFrameDefault+16263>, 0x7f2179df3fea <_PyEval_EvalFrameDefault+8218>, 0x7f2179df7a05 <_PyEval_EvalFrameDefault+23093>, 0x7f2179dfa302 <_PyEval_EvalFrameDefault+33586>, 0x7f2179df61e9 <_PyEval_EvalFrameDefault+16921>, 0x7f2179df4eb6 <_PyEval_EvalFrameDefault+12006>, 0x7f2179df9266 <_PyEval_EvalFrameDefault+29334>, 0x7f2179df80e7 <_PyEval_EvalFrameDefault+24855>, 0x7f2179dfa9c6 <_PyEval_EvalFrameDefault+35318>, 0x7f2179d0fcf6 <_PyEval_EvalFrameDefault-926426>, 0x7f2179df29d9 <_PyEval_EvalFrameDefault+2569>, 0x7f2179d0f75d <_PyEval_EvalFrameDefault-927859>, 0x7f2179df74d7 <_PyEval_EvalFrameDefault+21767>, 0x7f2179df4347 <_PyEval_EvalFrameDefault+9079>, 0x7f2179df6b60 <_PyEval_EvalFrameDefault+19344>, 0x7f2179df38ee <_PyEval_EvalFrameDefault+6430>, 0x7f2179df683b <_PyEval_EvalFrameDefault+18539>, 0x7f2179df5a26 <_PyEval_EvalFrameDefault+14934>, 0x7f2179df2d77 <_PyEval_EvalFrameDefault+3495>, 0x7f2179df33a0 <_PyEval_EvalFrameDefault+5072>, 0x7f2179df2938 <_PyEval_EvalFrameDefault+2408>, 0x7f2179df3cb5 <_PyEval_EvalFrameDefault+7397>, 0x7f2179dfa0a8 <_PyEval_EvalFrameDefault+32984>, 0x7f2179df2e04 <_PyEval_EvalFrameDefault+3636>, 0x7f2179df9562 <_PyEval_EvalFrameDefault+30098>, 0x7f2179df21d3 <_PyEval_EvalFrameDefault+515>, 0x7f2179df7c80 <_PyEval_EvalFrameDefault+23728>, 0x7f2179df7943 <_PyEval_EvalFrameDefault+22899>, 0x7f2179df99e3 <_PyEval_EvalFrameDefault+31251>, 0x7f2179df9799 <_PyEval_EvalFrameDefault+30665>, 0x7f2179df30cb <_PyEval_EvalFrameDefault+4347>, 0x7f2179df9893 <_PyEval_EvalFrameDefault+30915>, 0x7f2179df6507 <_PyEval_EvalFrameDefault+17719>, 0x7f2179df6aba <_PyEval_EvalFrameDefault+19178>, 0x7f2179df9945 <_PyEval_EvalFrameDefault+31093>, 0x7f2179d0d2bf <_PyEval_EvalFrameDefault-937233>, 0x7f2179df471b <_PyEval_EvalFrameDefault+10059>, 0x7f2179df2409 <_PyEval_EvalFrameDefault+1081>, 0x7f2179df7db9 <_PyEval_EvalFrameDefault+24041>, 0x7f2179df5330 <_PyEval_EvalFrameDefault+13152>, 0x7f2179df5eb8 <_PyEval_EvalFrameDefault+16104>, 0x7f2179dfa1c8 <_PyEval_EvalFrameDefault+33272>, 0x7f2179df56c7 <_PyEval_EvalFrameDefault+14071>, 0x7f2179df3176 <_PyEval_EvalFrameDefault+4518>, 0x7f2179df4560 <_PyEval_EvalFrameDefault+9616>, 0x7f2179dfac79 <_PyEval_EvalFrameDefault+36009>, 0x7f2179dfa607 <_PyEval_EvalFrameDefault+34359>, 0x7f2179df568e <_PyEval_EvalFrameDefault+14014>, 0x7f2179df22be <_PyEval_EvalFrameDefault+750>, 0x7f2179df24c9 <_PyEval_EvalFrameDefault+1273>, 0x7f2179df41f3 <_PyEval_EvalFrameDefault+8739>, 0x7f2179df23a3 <_PyEval_EvalFrameDefault+979>, 0x7f2179df2463 <_PyEval_EvalFrameDefault+1171>, 0x7f2179df85d0 <_PyEval_EvalFrameDefault+26112>, 0x7f2179df44e8 <_PyEval_EvalFrameDefault+9496>, 0x7f2179df50d8 <_PyEval_EvalFrameDefault+12552>, 0x7f2179df9f2b <_PyEval_EvalFrameDefault+32603>, 0x7f2179df42a8 <_PyEval_EvalFrameDefault+8920>, 0x7f2179df2a96 <_PyEval_EvalFrameDefault+2758>, 0x7f2179df32c1 <_PyEval_EvalFrameDefault+4849>, 0x7f2179df6716 <_PyEval_EvalFrameDefault+18246>, 0x7f2179df20fb <_PyEval_EvalFrameDefault+299>, 0x7f2179df27ac <_PyEval_EvalFrameDefault+2012>, 0x7f2179df972e <_PyEval_EvalFrameDefault+30558>, 0x7f2179df8d39 <_PyEval_EvalFrameDefault+28009>, 0x7f2179df42fb <_PyEval_EvalFrameDefault+9003>, 0x7f2179df4769 <_PyEval_EvalFrameDefault+10137>, 0x7f2179df9d8e <_PyEval_EvalFrameDefault+32190>, 0x7f2179d0d5d2 <_PyEval_EvalFrameDefault-936446>, 0x7f2179df76ad <_PyEval_EvalFrameDefault+22237>, 0x7f2179df8a90 <_PyEval_EvalFrameDefault+27328>, 0x7f2179df66d9 <_PyEval_EvalFrameDefault+18185>, 0x7f2179df8193 <_PyEval_EvalFrameDefault+25027>, 0x7f2179df7eaa <_PyEval_EvalFrameDefault+24282>, 0x7f2179df3256 <_PyEval_EvalFrameDefault+4742>, 0x7f2179df8995 <_PyEval_EvalFrameDefault+27077>, 0x7f2179df96bb <_PyEval_EvalFrameDefault+30443>, 0x7f2179df2589 <_PyEval_EvalFrameDefault+1465>, 0x7f2179dfa42e <_PyEval_EvalFrameDefault+33886>, 0x7f2179df7b2f <_PyEval_EvalFrameDefault+23391>, 0x7f2179df7f0f <_PyEval_EvalFrameDefault+24383>, 0x7f2179df5795 <_PyEval_EvalFrameDefault+14277>, 0x7f2179df3d3f <_PyEval_EvalFrameDefault+7535>, 0x7f2179df6323 <_PyEval_EvalFrameDefault+17235>, 0x7f2179df8b74 <_PyEval_EvalFrameDefault+27556>, 0x7f2179df4f48 <_PyEval_EvalFrameDefault+12152>, 0x7f2179df344d <_PyEval_EvalFrameDefault+5245>, 0x7f2179df4973 <_PyEval_EvalFrameDefault+10659>, 0x7f2179df224e <_PyEval_EvalFrameDefault+638>, 0x7f2179dfab96 <_PyEval_EvalFrameDefault+35782>, 0x7f2179df875c <_PyEval_EvalFrameDefault+26508>, 0x7f2179df2151 <_PyEval_EvalFrameDefault+385>, 0x7f2179df73fd <_PyEval_EvalFrameDefault+21549>, 0x7f2179df9439 <_PyEval_EvalFrameDefault+29801>, 0x7f2179df83d0 <_PyEval_EvalFrameDefault+25600>, 0x7f2179df399e <_PyEval_EvalFrameDefault+6606>, 0x7f2179df55e1 <_PyEval_EvalFrameDefault+13841>, 0x7f2179df5fe6 <_PyEval_EvalFrameDefault+16406>, 0x7f2179df912e <_PyEval_EvalFrameDefault+29022>, 0x7f2179dfa268 <_PyEval_EvalFrameDefault+33432>, 0x7f2179df9b65 <_PyEval_EvalFrameDefault+31637>, 0x7f2179df7d01 <_PyEval_EvalFrameDefault+23857>, 0x7f2179df9fec <_PyEval_EvalFrameDefault+32796>, 0x7f2179df6951 <_PyEval_EvalFrameDefault+18817>, 0x7f2179df441f <_PyEval_EvalFrameDefault+9295>, 0x7f2179dfafd6 <_PyEval_EvalFrameDefault+36870>, 0x7f2179d0f910 <_PyEval_EvalFrameDefault-927424>, 0x7f2179d0f910 <_PyEval_EvalFrameDefault-927424>, 0x7f2179df25d8 <_PyEval_EvalFrameDefault+1544>, 0x7f2179df51b4 <_PyEval_EvalFrameDefault+12772>, 0x7f2179dfa86c <_PyEval_EvalFrameDefault+34972>, 0x7f2179dfaf17 <_PyEval_EvalFrameDefault+36679>, 0x7f2179d1040e <_PyEval_EvalFrameDefault-924610>, 0x7f2179dfa778 <_PyEval_EvalFrameDefault+34728>, 0x7f2179d0f910 <_PyEval_EvalFrameDefault-927424> <repeats 60 times>, 0x7f2179d0cd67 <_PyEval_EvalFrameDefault-938601>, 0x7f2179df9c05 <_PyEval_EvalFrameDefault+31797>, 0x7f2179d0dbc0 <_PyEval_EvalFrameDefault-934928>, 0x7f2179df95c3 <_PyEval_EvalFrameDefault+30195>, 0x7f2179d10dcb <_PyEval_EvalFrameDefault-922117>, 0x7f2179dfadd6 <_PyEval_EvalFrameDefault+36358>, 0x7f2179d0cc1f <_PyEval_EvalFrameDefault.cold>, 0x7f2179d10d72 <_PyEval_EvalFrameDefault-922206>, 0x7f2179d0ff67 <_PyEval_EvalFrameDefault-925801>, 0x7f2179d10257 <_PyEval_EvalFrameDefault-925049>, 0x7f2179dfa68f <_PyEval_EvalFrameDefault+34495>, 0x7f2179d0f354 <_PyEval_EvalFrameDefault-928892>, 0x7f2179df9cad <_PyEval_EvalFrameDefault+31965>...}
#25 0x00007f2179e8abc6 in PyEval_EvalCode (co=0x55850972b310, globals=<optimized out>, locals=0x7f2179bf95c0) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Python/ceval.c:567
tstate = 0x7f217a2478b0 <_PyRuntime+459824>
builtins = <optimized out>
desc = {fc_globals = 0x7f2179bf95c0, fc_builtins = 0x7f2179b9cd80, fc_name = 0x7f217a1dd390 <_PyRuntime+24336>, fc_qualname = 0x7f217a1dd390 <_PyRuntime+24336>, fc_code = 0x55850972b310, fc_defaults = 0x0, fc_kwdefaults = 0x0, fc_closure = 0x0}
func = 0x7f2179bd9bc0
res = <optimized out>
#26 0x00007f2179eada0a in run_eval_code_obj (tstate=tstate@entry=0x7f217a2478b0 <_PyRuntime+459824>, co=co@entry=0x55850972b310, globals=globals@entry=0x7f2179bf95c0, locals=locals@entry=0x7f2179bf95c0) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Python/pythonrun.c:1693
v = <optimized out>
#27 0x00007f2179ea884e in run_mod (mod=mod@entry=0x558509737738, filename=filename@entry=0x7f2179bf9770, globals=globals@entry=0x7f2179bf95c0, locals=locals@entry=0x7f2179bf95c0, flags=flags@entry=0x7fffd48cc508, arena=arena@entry=0x7f2179b1be10) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Python/pythonrun.c:1714
tstate = 0x7f217a2478b0 <_PyRuntime+459824>
co = 0x55850972b310
v = <optimized out>
#28 0x00007f2179ec8f03 in pyrun_file (fp=fp@entry=0x558509608900, filename=filename@entry=0x7f2179bf9770, start=start@entry=257, globals=globals@entry=0x7f2179bf95c0, locals=locals@entry=0x7f2179bf95c0, closeit=closeit@entry=1, flags=0x7fffd48cc508) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Python/pythonrun.c:1614
arena = 0x7f2179b1be10
mod = 0x558509737738
ret = <optimized out>
#29 0x00007f2179ec824a in _PyRun_SimpleFileObject (fp=0x558509608900, filename=0x7f2179bf9770, closeit=1, flags=0x7fffd48cc508) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Python/pythonrun.c:433
m = 0x7f2179bcad90
d = 0x7f2179bf95c0
v = <optimized out>
set_file_name = 1
ret = -1
pyc = <optimized out>
#30 0x00007f2179ec789f in _PyRun_AnyFileObject (fp=0x558509608900, filename=0x7f2179bf9770, closeit=1, flags=0x7fffd48cc508) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Python/pythonrun.c:78
decref_filename = 0
res = <optimized out>
#31 0x00007f2179eb9172 in pymain_run_file_obj (skip_source_first_line=0, filename=0x7f2179bf9770, program_name=0x7f2179bf9730) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Modules/main.c:360
fp = <optimized out>
sb = {st_dev = 64768, st_ino = 288555, st_nlink = 1, st_mode = 33261, st_uid = 0, st_gid = 0, __pad0 = 0, st_rdev = 0, st_size = 22004, st_blksize = 4096, st_blocks = 48, st_atim = {tv_sec = 1689612575, tv_nsec = 371331684}, st_mtim = {tv_sec = 1689206400, tv_nsec = 0}, st_ctim = {tv_sec = 1689582769, tv_nsec = 243272876}, __glibc_reserved = {0, 0, 0}}
cf = {cf_flags = 0, cf_feature_version = 12}
run = <optimized out>
fp = <optimized out>
sb = <optimized out>
cf = <optimized out>
run = <optimized out>
ch = <optimized out>
#32 pymain_run_file (config=0x7f217a1ea4f0 <_PyRuntime+77936>) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Modules/main.c:379
filename = 0x7f2179bf9770
program_name = 0x7f2179bf9730
res = <optimized out>
filename = <optimized out>
program_name = <optimized out>
res = <optimized out>
#33 pymain_run_python (exitcode=0x7fffd48cc504) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Modules/main.c:610
main_importer_path = <optimized out>
interp = 0x7f217a1e9ff0 <_PyRuntime+76656>
config = 0x7f217a1ea4f0 <_PyRuntime+77936>
main_importer_path = <optimized out>
interp = <optimized out>
config = <optimized out>
error = <optimized out>
done = <optimized out>
path0 = <optimized out>
res = <optimized out>
#34 Py_RunMain () at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Modules/main.c:689
exitcode = 0
#35 0x00007f2179e74aec in Py_BytesMain (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/python3.12-3.12.0~b4-1.fc39.x86_64/Modules/main.c:743
args = {argc = 4, use_bytes_argv = 1, bytes_argv = 0x7fffd48cc768, wchar_argv = 0x0}
#36 0x00007f217982814a in __libc_start_call_main (main=main@entry=0x5585080d6160 <main>, argc=argc@entry=4, argv=argv@entry=0x7fffd48cc768) at ../sysdeps/nptl/libc_start_call_main.h:58
self = <optimized out>
result = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736759383912, 5075100263361127255, 4, 0, 139781761576960, 94029854117280, 5075100263346447191, 5175545063465526103}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x4, 0x7fffd48cc760}, data = {prev = 0x0, cleanup = 0x0, canceltype = 4}}}
not_first_call = <optimized out>
#37 0x00007f217982820b in __libc_start_main_impl (main=0x5585080d6160 <main>, argc=4, argv=0x7fffd48cc768, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffd48cc758) at ../csu/libc-start.c:360
No locals.
#38 0x00005585080d6095 in _start ()
No symbol table info available.
quit
There is also this in the system log, confirming we're hitting the bit of g_mutex_unlock_slowpath
where it intentionally bails out:
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: Attempt to unlock mutex that was not locked
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: Fatal Python error: Aborted
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: Thread 0x00007fb6e5b7a6c0 (most recent call first):
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/subprocess.py", line 1196 in communicate
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/site-packages/pyanaconda/core/util.py", line 289 in _run_program
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/site-packages/pyanaconda/core/util.py", line 349 in execWithRedirect
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/site-packages/pyanaconda/timezone.py", line 80 in time_initialize
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/threading.py", line 989 in run
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/site-packages/pyanaconda/core/threads.py", line 280 in run
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/threading.py", line 1052 in _bootstrap_inner
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/threading.py", line 1009 in _bootstrap
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: Current thread 0x00007fb7098e8740 (most recent call first):
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib/python3.12/site-packages/gi/overrides/Gtk.py", line 1689 in main
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/usr/lib64/python3.12/site-packages/pyanaconda/ui/gui/__init__.py", line 827 in run
Jul 17 06:24:54 localhost-live anaconda.desktop[2475]: File "/sbin/anaconda", line 576 in <module>
The bit of libnm that we hit is this:
static void
_ctx_integ_source_reacquire(CtxIntegSource *ctx_src)
{
if (G_LIKELY(ctx_src->acquired && g_main_context_is_owner(ctx_src->context)))
return;
/* the parent context now iterates on a different thread.
* We need to release and reacquire the inner context. */
if (ctx_src->acquired)
g_main_context_release(ctx_src->context);
Line 4953 is that g_main_context_release
call.
I can see quite a lot of relevant change in 2.77.0, so an immediate suspect isn't obvious. I'll try and bisect this.