After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 737226 - Plymouth splash screen is briefly displayed after logging in
Plymouth splash screen is briefly displayed after logging in
Status: RESOLVED NOTGNOME
Product: gdm
Classification: Core
Component: general
3.13.x
Other Linux
: Normal minor
: ---
Assigned To: GDM maintainers
GDM maintainers
: 734173 743881 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2014-09-23 23:32 UTC by Michael Catanzaro
Modified: 2015-06-25 12:11 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Michael Catanzaro 2014-09-23 23:32:29 UTC
After entering my password to log into my new Fedora 21 Alpha Workstation install, the plymouth bootsplash (Fedora logo) flashes briefly on the screen.  It's gone very quickly, but long enough to be highly noticeable. I have no clue what component is at fault, guessing gdm. This is a regression from F20/3.10.

gdm-1:3.13.91-2.fc21
gnome-shell-3.13.91-1.fc21
plymouth-0.8.9-7.2013.08.14.fc21
Comment 1 Jasper St. Pierre (not reading bugmail) 2014-09-23 23:52:23 UTC
The component at fault is SNA.
Comment 2 Jasper St. Pierre (not reading bugmail) 2014-09-26 14:52:31 UTC
*** Bug 734173 has been marked as a duplicate of this bug. ***
Comment 3 Jasper St. Pierre (not reading bugmail) 2014-09-26 14:53:17 UTC
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

*** This bug has been marked as a duplicate of bug 736856 ***
Comment 4 Britt Yazel 2014-09-27 01:06:26 UTC
I am going to reopen this bug as I do not believe it to be the same one as the SNA bug, or it is but the issue is actually something other than SNA. There isn't any way my system is running SNA at all, it is definitely using UXA.
Comment 5 Britt Yazel 2014-09-27 01:07:44 UTC
Nevermind, I guess I can't unmark a bug as a duplicate
Comment 6 Britt Yazel 2014-09-27 01:09:46 UTC
Sorry above, wrong bug, ignore me
Comment 7 Jasper St. Pierre (not reading bugmail) 2014-09-27 01:17:04 UTC
*** Bug 734173 has been marked as a duplicate of this bug. ***
Comment 8 Jasper St. Pierre (not reading bugmail) 2015-02-02 19:44:50 UTC
*** Bug 743881 has been marked as a duplicate of this bug. ***
Comment 9 Frédéric Parrenin 2015-02-02 19:56:54 UTC
So this bug appears for me too on fedora 21.
My PC is the Acer Chromebook C720P (inter graphic card).
Comment 10 Chris Wilson 2015-02-04 22:04:16 UTC
The issue is that the copy from the CompositeOverlayWindow onto the root window that is expected to be performed when gdm exits (and as the last composite client causing the X server to clean up the composite overlay) is skipped at the window is already unrealized at the point at which compRestoreWindow() is performed (via compUnrealizeWindow()).
Comment 11 Chris Wilson 2015-02-04 22:44:33 UTC
With Present there is another fail path:

  • #2 damageCopyArea
  • #3 present_copy_region
  • #4 present_unflip
  • #5 present_check_flip_window
  • #6 present_clip_notify
  • #7 compClipNotify
  • #8 miMarkUnrealizedWindow
  • #9 UnrealizeTree
  • #10 UnmapWindow
  • #11 DeleteWindow
  • #12 doFreeResource
  • #13 FreeResource
  • #14 compDestroyOverlayWindow
  • #15 FreeCompositeClientOverlay
  • #16 doFreeResource
  • #17 FreeClientResources
  • #18 CloseDownClient
  • #19 Dispatch
  • #20 dix_main
  • #21 main

Comment 12 Chris Wilson 2015-02-04 22:50:54 UTC
(In reply to comment #10)
> The issue is that the copy from the CompositeOverlayWindow onto the root window
> that is expected to be performed when gdm exits (and as the last composite
> client causing the X server to clean up the composite overlay) is skipped at
> the window is already unrealized at the point at which compRestoreWindow() is
> performed (via compUnrealizeWindow()).

Nope, the bug only presents itself with trace 234622
Comment 13 Jasper St. Pierre (not reading bugmail) 2015-02-04 22:55:33 UTC
I'm still sufficiently confused. The COW and root window pixmap are backed by the same pixmap, no? What's the copy here?
Comment 14 Chris Wilson 2015-02-04 22:58:18 UTC
That link is broken by Present and the copy here is when Present has to restore the contents from the flip Pixmap back to the original Pixmap.
Comment 15 Chris Wilson 2015-02-05 09:47:47 UTC
fwiw, this is fixed by:

diff --git a/present/present.c b/present/present.c
index 38f24ba..8c50664 100644
--- a/present/present.c
+++ b/present/present.c
@@ -409,20 +409,20 @@ static void
 present_unflip(ScreenPtr screen)
 {
     present_screen_priv_ptr screen_priv = present_screen_priv(screen);
+    PixmapPtr pixmap = (*screen->GetScreenPixmap)(screen);
 
     assert (!screen_priv->unflip_event_id);
     assert (!screen_priv->flip_pending);
 
     if (screen_priv->flip_window)
-        present_set_tree_pixmap(screen_priv->flip_window,
-                                  (*screen->GetScreenPixmap)(screen));
+        present_set_tree_pixmap(screen_priv->flip_window, pixmap);
 
-    present_set_tree_pixmap(screen->root, (*screen->GetScreenPixmap)(screen));
+    present_set_tree_pixmap(screen->root, pixmap);
 
     /* Update the screen pixmap with the current flip pixmap contents
      */
     if (screen_priv->flip_pixmap && screen_priv->flip_window) {
-        present_copy_region(&screen_priv->flip_window->drawable,
+        present_copy_region(&pixmap->drawable,
                             screen_priv->flip_pixmap,
                             NULL, 0, 0);
     }
Comment 16 Britt Yazel 2015-06-25 05:44:48 UTC
Has this fix been implemented yet? I still have this issue and was wondering if I can expect this to be fixed in an upcoming gnome release? I am not familiar which package present.c is apart of to look upstream
Comment 17 Jasper St. Pierre (not reading bugmail) 2015-06-25 06:06:38 UTC
Yes. It will be in the next X server release. You can see the fix here: http://cgit.freedesktop.org/xorg/xserver/commit/?id=806470b9f623089dc81b985f250f0c3a4e8edbe8
Comment 18 Michael Catanzaro 2015-06-25 12:11:51 UTC
Cool. Let's not leave the bug report open then.