Bug 2224009

Summary: Steam client and anaconda flood messages: "nm-CRITICAL **: 19:27:07.444: file src/libnm-glib-aux/nm-shared-utils.c: line 4959 (<dropped>): should not be reached" with glib 2.77.0
Product: [Fedora] Fedora Reporter: Mikhail <mikhail.v.gavrilov>
Component: NetworkManagerAssignee: Fernando F. Mancera <ferferna>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: awilliam, bgalvani, dcbw, ferferna, gnome-sig, liangwen12year, lkundrak, lruzicka, mclasen, pampelmuse, rhughes, rstrode, thaller, vbubela
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-07-31 10:58:08 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2143444    
Attachments:
Description Flags
terminal screenshot
none
QEMU screenshot none

Description Mikhail 2023-07-19 14:40:05 UTC
Description of problem:
Steam client begun flood console with messages: "(steam:383065): nm-CRITICAL **: 19:27:07.444: file src/libnm-glib-aux/nm-shared-utils.c: line 4959 (<dropped>): should not be reached" after upgrade glib2 from 2.77.0-2.fc39 to 2.77.0-3.fc39.


https://src.fedoraproject.org/rpms/glib2/c/39b488fb499b8a63ce3d8d2251cbc4eb90a54a55?branch=rawhide

I cannot judge who is wrong glib2 or Steam client, but add missing return on error in g_main_context_release looks reasonable to me.

Comment 1 Mikhail 2023-07-19 14:42:20 UTC
Created attachment 1976540 [details]
terminal screenshot

Comment 2 Adam Williamson 2023-07-25 17:01:02 UTC
The crux of the whole issue is this code:

https://github.com/NetworkManager/NetworkManager/blob/ab69d430a7fa5fe16c9b4c4d2b57b85df8c3011b/src/libnm-glib-aux/nm-shared-utils.c#L4943-L4962

that's what caused the crash in anaconda, as well as what is causing this. (I'm actually surprised Steam client didn't also crash with 2.77.0-2.fc39). In 2.77.0, glib added a check for - as best as I can tell - *exactly the thing NM is specifically trying to do there*, releasing a context from a thread which doesn't own it.

Again as best as I can tell, NM seems to be trying to clean up after NM-based app code - assuming that's what "the user" refers to in the comment - which is doing stuff it shouldn't be doing. But glib doesn't think that what NM is doing is right. I am not sure how to unpick this conundrum, but let's yank in the NM maintainer.

Comment 3 Adam Williamson 2023-07-25 17:04:57 UTC
*** Bug 2224510 has been marked as a duplicate of this bug. ***

Comment 4 Adam Williamson 2023-07-25 17:09:44 UTC
Let's re-assign to NM for now, as it doesn't seem like glib is really doing anything wrong here. In the end the fixes may have to be in the NM clients (Steam, and whatever thing in the installer environment is actually causing this - not sure if anaconda uses libnm itself or if something else is triggering this), but let's see what NM maintainers have to say.

Forgot to mention, the new check in glib was added in https://gitlab.gnome.org/GNOME/glib/-/commit/3926af723a7469a2ea492307f421820361d617b3 , then a return statement was added to the check in https://gitlab.gnome.org/GNOME/glib/-/commit/c67dd9d3fe9186bef76ba682a7e277ccb7d95227 to fix anaconda crashing (which I reported as https://gitlab.gnome.org/GNOME/glib/-/issues/3054 ).

Comment 5 Christoph Karl 2023-07-27 04:49:33 UTC
Created attachment 1980219 [details]
QEMU screenshot

Same for QEMU

Comment 6 Fernando F. Mancera 2023-07-27 07:54:24 UTC
As Thomas already replied in upstream issue, we believe that this a bug from GLib. Please, check:

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1361
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3513
https://gitlab.gnome.org/GNOME/glib/-/issues/3054#note_1799354

I will track this until we get an answer from GLib people and will reassign it in case they confirm it is a bug on GLib.

Thanks!

Comment 7 Fernando F. Mancera 2023-07-31 10:58:08 UTC
I am closing this as UPSTREAM. Please check https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3513 for more details. The change was reverted in GLib.

Thank you!

Comment 8 Adam Williamson 2023-07-31 19:11:32 UTC
Rawhide would be a better resolution, I guess. It's fixed in 2.77.1 so should be in the next compose.

Comment 9 Christoph Karl 2023-08-01 15:33:13 UTC
Works for me with "Fedora-Everything-netinst-x86_64-Rawhide-20230801.n.0.iso"