Bug 1887266
| Summary: | RHEL 8.3 messages log contain some "Fatal IO error " | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | shangsong1 <shangsong1> | ||||
| Component: | gtk3 | Assignee: | David King <dking> | ||||
| Status: | CLOSED ERRATA | QA Contact: | Radek Duda <rduda> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | high | ||||||
| Version: | 8.3 | CC: | ahuang12, bcao, dengdeng1, dking, fmuellner, hdegoede, jadahl, mclasen, mknutson, otte, rduda, tpopela, yehs1 | ||||
| Target Milestone: | rc | Keywords: | Triaged | ||||
| Target Release: | 8.0 | Flags: | pm-rhel:
mirror+
|
||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | gtk3-3.22.30-9.el8 | Doc Type: | If docs needed, set a value | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2022-05-10 14:26:04 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: | |||||||
| Attachments: |
|
||||||
Hello Florian Can you help to check this issue Thanks in advance, Mike The message comes from GTK/GDK when the connection to the X server is lost. Shutting down the X server when the session ends isn't a responsibility of gnome-shell, so moving to GDM. The message is harmless, but it comes from gtk:
static int•
gdk_x_io_error (Display *display)•
{•
/* This is basically modelled after the code in XLib. We need•
* an explicit error handler here, so we can disable our atexit()•
* which would otherwise cause a nice segfault.•
* We fprintf(stderr, instead of g_warning() because g_warning()•
* could possibly be redirected to a dialog•
*/•
if (errno == EPIPE)•
{•
g_message ("The application '%s' lost its connection to the display %s;\n"•
"most likely the X server was shut down or you killed/destroyed\n"•
"the application.\n",•
g_get_prgname (),•
display ? DisplayString (display) : gdk_get_display_arg_name ());•
}•
else•
{•
g_message ("%s: Fatal IO error %d (%s) on X server %s.\n",•
g_get_prgname (),•
errno, g_strerror (errno),•
display ? DisplayString (display) : gdk_get_display_arg_name ());•
}•
•
_exit (1);•
}•
There are a number of problems with this handler:
1) It tries to rely on EPIPE to mean "x server was shut down", but EPIPE isn't the only error that a "X server was shut down" event could generate. As we see above, we also get errno = 0, and errno = 11. it's possible this check was correct pre-xcb, not sure.
2) The comment says it uses fprintf, but the code doesn't. This is because of these two commits:
commit 93e203e06769ccae494fc67809b9b4ee855f5b05
Author: Owen W. Taylor <otaylor>
Date: Tue Sep 21 00:30:46 2010 -0400
Use g_warning() for X errors and X IO errors
Currently fprintf(stderr, ...) is used for X error and X IO errors
(unless compiled with debugging, in which case g_error() is used for
X errors.)
But if an application is redirecting log messages, we really want
X errors to appear in that same log, so it's better to use a g_logv()
variant.
Though g_warning() isn't really appropriate for "lost connection to the
server", G_LOG_LEVEL_INFO isn't part of the "prefixed log levels"
so will produce output without the application name and PID.
https://bugzilla.gnome.org/show_bug.cgi?id=630216
commit c70ba3a4f0043e11fffe0023685f99ec3990c644
Author: Matthias Clasen <mclasen>
Date: Wed Nov 30 13:43:17 2016 -0500
x11: Don't warn if the display is closed
This causes a storm of warnings from all applications in the logs
whenever the display goes away, and is not useful.
The latter of these commits makes it clear the message isn't supposed to be showing up in the log anymore.
I think Matthias forgot that g_message does show up in logs.
My suggestion is to just make the entire function be:
g_debug ("%s: Fatal IO error %d (%s) on X server %s.\n",•
g_get_prgname (),•
errno, g_strerror (errno),•
display ? DisplayString (display) : gdk_get_display_arg_name ());
_exit (1);
g_debug doesn't show up in logs unless the user enables debugging and does get prefixed, so it seems like what we want.
moving to gtk
Hello Ben Can we request to add this issue to the release note known issues? Best Regards, Mike Hello Ben Any plan for the bug fixing on this issue on RHEL8.4? Thanks in advance, Mike Moving to POST as there's patch available. (In reply to Tomas Popela from comment #7) > Moving to POST as there's patch available. Hi, Tomas I saw the bug in post status for several month, Is there any plan to backport the patch to RHEL? (In reply to Mike Cao from comment #8) > (In reply to Tomas Popela from comment #7) > > Moving to POST as there's patch available. > > Hi, Tomas > > I saw the bug in post status for several month, Is there any plan to > backport the patch to RHEL? We are waiting for more gtk3 related fixes (we have few queued in RHEL 7 where one is waiting on upstream fix) to be brought into RHEL 8. It's possible that this will be fixed in 8.6.0 - will sync with Matthias after he's back from PTO. Backport builds fine locall.y Reproduced with gtk3-3.22.30-8.el8.x86_64 Cannot reproduce with gtk3-3.22.30-9.el8.x86_64. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (gtk3 bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2022:1946 |
Created attachment 1720815 [details] messages and xorg log Description of problem: Some "Fatal IO error" is included in messages log: Sep 21 02:20:22 localhost journal[5507]: not GsPlugin error g-io-error-quark:1: Error when getting information for file “/root/.cache/gnome-software/shell-extensions/gnome.json”: No such file or directory Sep 7 04:35:33 localhost journal[17430]: gnome-shell: Fatal IO error 0 (Success) on X server :0. Sep 7 04:35:33 localhost journal[17563]: gsd-clipboard: Fatal IO error 11 (Resource temporarily unavailable) on X server :0. Sep 7 04:35:33 localhost journal[17560]: gsd-xsettings: Fatal IO error 11 (Resource temporarily unavailable) on X server :0. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1.Fresh install RHEL 8.3 and check whether the messages log contain error information or not. 2. 3. Actual results: Some "Fatal IO error" is included in messages log Expected results: It is no any error/failure log in the log Additional info: