RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1415329 - Gnome will not start after updating to 7.3 on VMWare virtual machines
Summary: Gnome will not start after updating to 7.3 on VMWare virtual machines
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: mutter
Version: 7.3
Hardware: x86_64
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Ray Strode [halfline]
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks: 1420851
TreeView+ depends on / blocked
 
Reported: 2017-01-20 21:56 UTC by Joe Wright
Modified: 2021-12-10 14:52 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1481372 (view as bug list)
Environment:
Last Closed: 2018-11-26 19:09:08 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
GNOME Bugzilla 783630 0 Normal RESOLVED Mutter and Shell crashing on moving window through monitor gap 2020-08-10 06:52:53 UTC

Description Joe Wright 2017-01-20 21:56:46 UTC
Description of problem:
- Gnome GUI will not start after updating to 7.3 on VMWare ESX virtual machines
- occurs regardless of 3d acceleration being enabled
- core dump shows gnome unable to find the display even though variables are set appropriately

Version-Release number of selected component (if applicable):
- 7.3 GA

How reproducible:
- Unable to reproduce in house, but several reports by customer. 

Steps to Reproduce:
1.Update to RHEL 7.3 and reboot
2.
3.

Actual results:
- Gnome GUI will not start

Expected results:


Additional info:

Dec  7 10:02:57 <hostname> gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session opened for user gdm by (uid=0)
Dec  7 10:02:57 <hostname> gnome-session[21577]: WARNING: Error getting login monitor: -13
Dec  7 10:02:57 <hostname> gnome-session[21577]: WARNING: Error getting login monitor: -13
Dec  7 10:02:58 <hostname> spice-vdagent[21609]: Cannot access vdagent virtio channel /dev/virtio-ports/com.redhat.spice.0
Dec  7 10:02:58 <hostname> spice-vdagent[21609]: Cannot access vdagent virtio channel /dev/virtio-ports/com.redhat.spice.0
Dec  7 10:02:58 <hostname> gnome-session[21577]: WARNING: App 'spice-vdagent.desktop' exited with code 1
Dec  7 10:02:58 <hostname> gnome-session[21577]: WARNING: App 'spice-vdagent.desktop' exited with code 1
Dec  7 10:03:34 <hostname> gdm-password]: pam_unix(gdm-password:session): session opened for user root by (uid=0)
Dec  7 10:03:35 <hostname> gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session closed for user gdm
Dec  7 10:03:36 <hostname> spice-vdagent[21993]: Cannot access vdagent virtio channel /dev/virtio-ports/com.redhat.spice.0
Dec  7 10:03:36 <hostname> spice-vdagent[21993]: Cannot access vdagent virtio channel /dev/virtio-ports/com.redhat.spice.0
Dec  7 10:03:36 <hostname> gnome-session[21797]: WARNING: App 'spice-vdagent.desktop' exited with code 1
Dec  7 10:03:36 <hostname> gnome-session[21797]: WARNING: App 'spice-vdagent.desktop' exited with code 1
Dec  7 10:03:53 <hostname> kernel: [84211.924922] gnome-shell[22014]: segfault at 80 ip 00007f43ccdefac0 sp 00007fffb8d75608 error 4 in libgnome-shell.so[7f43ccd97000+285000]
Dec  7 10:03:53 <hostname> kernel: [84211.924922] gnome-shell[22014]: segfault at 80 ip 00007f43ccdefac0 sp 00007fffb8d75608 error 4 in libgnome-shell.so[7f43ccd97000+285000]
Dec  7 10:03:54 <hostname> gnome-session[21797]: WARNING: Application 'gnome-shell.desktop' killed by signal 11
Dec  7 10:03:54 <hostname> gnome-session[21797]: WARNING: Application 'gnome-shell.desktop' killed by signal 11
Dec  7 10:03:59 <hostname> kernel: [84217.813926] gnome-shell[22283]: segfault at 80 ip 00007fe9a74ccac0 sp 00007ffc9886ac48 error 4 in libgnome-shell.so[7fe9a7474000+285000]
Dec  7 10:03:59 <hostname> kernel: [84217.813926] gnome-shell[22283]: segfault at 80 ip 00007fe9a74ccac0 sp 00007ffc9886ac48 error 4 in libgnome-shell.so[7fe9a7474000+285000]
Dec  7 10:03:59 <hostname> gnome-session[21797]: WARNING: Application 'gnome-shell.desktop' killed by signal 11
Dec  7 10:03:59 <hostname> gnome-session[21797]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Dec  7 10:03:59 <hostname> gnome-session[21797]: WARNING: Application 'gnome-shell.desktop' killed by signal 11
Dec  7 10:03:59 <hostname> gnome-session[21797]: WARNING: App 'gnome-shell.desktop' respawnin


We cloned the VM and collected the following:
I get the following output from a terminal in a VNC session:

[linadmin@dor-pxe-test3 ~]$ xrandr --verbose > xrandr.log
RandR extension missing
[linadmin@dor-pxe-test3 ~]$ xdpyinfo -ext all >xdpyinfo.log
Xlib:  extension "Multi-Buffering" missing on display "127.0.0.1:1".
Xlib:  extension "XFree86-DGA" missing on display "127.0.0.1:1".
Xlib:  extension "XFree86-VidModeExtension" missing on display "127.0.0.1:1".
Xlib:  extension "XFree86-Misc" missing on display "127.0.0.1:1".
Xlib:  extension "XINERAMA" missing on display "127.0.0.1:1".

Not sure how the above are "missing", verified packages installation


-bash-4.2$ gdb `which gnome-shell` coredump 
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-94.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/gnome-shell...Reading symbols from /usr/lib/debug/usr/bin/gnome-shell.debug...done.
done.
[New LWP 12940]
[New LWP 12952]
[New LWP 12951]
[New LWP 12954]
[New LWP 12955]
[New LWP 12956]
[New LWP 12957]

warning: .dynamic section for "/lib64/libEGL.so.1" is not at the expected address (wrong library or version mismatch?)

warning: .dynamic section for "/lib64/libGL.so.1" is not at the expected address (wrong library or version mismatch?)
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/gnome-shell'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007fd44130f679 in update_move (window=window@entry=0x1bf9400, snap=snap@entry=0, x=410, y=47) at core/window.c:5620
5620          meta_window_get_work_area_for_monitor (window,
(gdb) bt
#0  0x00007fd44130f679 in update_move (window=window@entry=0x1bf9400 [MetaWindowX11], snap=snap@entry=0, x=410, y=47) at core/window.c:5620
#1  0x00007fd441310591 in meta_window_handle_mouse_grab_op_event (window=window@entry=0x1bf9400 [MetaWindowX11], event=event@entry=0x2066ce0)
    at core/window.c:6147
#2  0x00007fd4412f1d6b in event_callback (event=0x2066ce0, display=0xa5b2b0 [MetaDisplay]) at core/events.c:235
#3  0x00007fd4412f1d6b in event_callback (event=0x2066ce0, data=0xa5b2b0) at core/events.c:327
#4  0x00007fd44070339d in _clutter_event_process_filters (event=event@entry=0x2066ce0) at ./clutter-event.c:1768
#5  0x00007fd440715e33 in _clutter_process_event (device=0x8041c0 [ClutterInputDeviceXI2], event=0x2066ce0) at ./clutter-main.c:2248
#6  0x00007fd440715e33 in _clutter_process_event (context=0x62ce60, event=0x2066ce0, stage=<optimized out>) at ./clutter-main.c:2603
#7  0x00007fd440715e33 in _clutter_process_event (event=event@entry=0x2066ce0) at ./clutter-main.c:2763
#8  0x00007fd440730420 in _clutter_stage_process_queued_events (stage=0x85c610 [MetaStage]) at ./clutter-stage.c:1082
#9  0x00007fd440717b28 in clutter_clock_dispatch (master_clock=0xc4fc00 [ClutterMasterClock], stages=<optimized out>)
    at ./clutter-master-clock.c:372
#10 0x00007fd440717b28 in clutter_clock_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>)
    at ./clutter-master-clock.c:589
#11 0x00007fd43cec6d7a in g_main_context_dispatch (context=0x61e9f0) at gmain.c:3152
#12 0x00007fd43cec6d7a in g_main_context_dispatch (context=context@entry=0x61e9f0) at gmain.c:3767
#13 0x00007fd43cec70b8 in g_main_context_iterate (context=0x61e9f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at gmain.c:3838
#14 0x00007fd43cec738a in g_main_loop_run (loop=0x62ad40) at gmain.c:4032
#15 0x00007fd4412fa4c8 in meta_run () at core/main.c:476
#16 0x0000000000402455 in main (argc=1, argv=0x7fffa19f3e28) at main.c:471

So gnome-shell crashed while trying to move a window around on the screen

(gdb) f 0
#0  0x00007fd44130f679 in update_move (window=window@entry=0x1bf9400 [MetaWindowX11], snap=snap@entry=0, x=410, y=47) at core/window.c:5620
5620          meta_window_get_work_area_for_monitor (window,
(gdb) l
5615           * meta_screen_get_current_monitor() is slightly different: the former
5616           * refers to the monitor which contains the largest part of the window,
5617           * the latter to the one where the pointer is located.
5618           */
5619          monitor = meta_screen_get_current_monitor_info_for_pos (window->screen, x, y);
5620          meta_window_get_work_area_for_monitor (window,
5621                                                 monitor->number,
5622                                                 &work_area);
5623
5624          /* Check if the cursor is in a position which triggers tiling
(gdb) p window
$1 = 0x1bf9400 [MetaWindowX11]
(gdb) p monitor->number
Cannot access memory at address 0x0
(gdb) p work_area
$2 = {x = -1583400416, y = 32767, width = 106, height = 0}
(gdb) p monitor
$3 = (const MetaMonitorInfo *) 0x0

Monitor isn't supposed to be NULL

(gdb)
(gdb) info loc
monitor = 0x0
work_area = {x = -1583400416, y = 32767, width = 106, height = 0}
dx = 6
dy = 9
new_x = 6
new_y = 9
old = {x = -1583400416, y = 32767, width = 106, height = 0}
shake_threshold = 48
display = 0xa5b2b0 [MetaDisplay]
(gdb) p *window
$4 = {parent_instance = {g_type_instance = {g_class = 0x1d32d50}, ref_count = 4, qdata = 0xdea7e1}, display = 0xa5b2b0 [MetaDisplay], 
  screen = 0x63d5a0 [MetaScreen], stamp = 4294967300, monitor = 0x0, workspace = 0x0, client_type = META_WINDOW_CLIENT_TYPE_X11, 
  surface = 0x0, xwindow = 27262983, frame = 0x22c7800, depth = 32, xvisual = 0x8910a0, desc = 0x169fab0 "0x1a00007 (linadmin@d)", 
  title = 0xe28610 "linadmin@dor-pxe-test3:~", icon = 0x1761d20 [GdkPixbuf], mini_icon = 0x7fd414054120 [GdkPixbuf], 
  type = META_WINDOW_NORMAL, res_class = 0x2371bb0 "Gnome-terminal", res_name = 0x1301690 "gnome-terminal-server", 
  role = 0x10cff80 "gnome-terminal-window-b6f17707-8700-4fa9-befc-ca4901484c04", sm_client_id = 0x0, 
  wm_client_machine = 0x1aa5e80 "dor-pxe-test3", startup_id = 0x0, mutter_hints = 0x0, gtk_theme_variant = 0x0, 
  gtk_application_id = 0x20d05d0 "org.gnome.Terminal", gtk_unique_bus_name = 0x1f6b1d0 ":1.67", 
  gtk_application_object_path = 0x22232a0 "/org/gnome/Terminal", gtk_window_object_path = 0xda0670 "/org/gnome/Terminal/window/1", 
  gtk_app_menu_object_path = 0x2e04a50 "/org/gnome/Terminal/menus/appmenu", gtk_menubar_object_path = 0x0, hide_titlebar_when_maximized = 0, 
  net_wm_pid = 19319, xtransient_for = 0, xgroup_leader = 27262977, xclient_leader = 27262977, transient_for = 0x0, initial_workspace = 0, 
  initial_timestamp = 0, override_redirect = 0, maximized_horizontally = 0, maximized_vertically = 0, 
  maximize_horizontally_after_placement = 0, maximize_vertically_after_placement = 0, minimize_after_placement = 0, tile_mode = 0, 
  saved_maximize = 0, tile_monitor_number = -1, preferred_output_winsys_id = -1, shaded = 0, fullscreen = 0, urgent = 0, 
  fullscreen_monitors = {-1, 0, 0, 0}, require_fully_onscreen = 0, require_on_single_monitor = 0, require_titlebar_visible = 0, 
  on_all_workspaces = 1, on_all_workspaces_requested = 0, minimized = 0, tab_unminimized = 0, mapped = 1, hidden = 0, 
  visible_to_compositor = 1, known_to_compositor = 1, pending_compositor_effect = 4, iconic = 0, initially_iconic = 0, 
  initial_workspace_set = 0, initial_timestamp_set = 0, net_wm_user_time_set = 1, icon_geometry_set = 0, take_focus = 1, delete_window = 1, 
  can_ping = 1, input = 1, mwm_decorated = 1, mwm_border_only = 0, mwm_has_close_func = 1, mwm_has_minimize_func = 1, 
  mwm_has_maximize_func = 1, mwm_has_move_func = 1, mwm_has_resize_func = 1, decorated = 1, border_only = 0, always_sticky = 0, 
  has_close_func = 1, has_minimize_func = 1, has_maximize_func = 0, has_shade_func = 1, has_move_func = 1, has_resize_func = 1, 
  has_fullscreen_func = 1, skip_taskbar = 0, skip_pager = 0, wm_state_above = 0, wm_state_below = 0, wm_state_demands_attention = 0, 
  has_focus = 1, placed = 1, denied_focus_and_not_transient = 0, showing_for_first_time = 0, unmanaging = 0, constructing = 0, 
  is_in_queues = 0, keys_grabbed = 0, grab_on_frame = 1, all_keys_grabbed = 1, withdrawn = 0, calc_placement = 0, shaken_loose = 0, 
  have_focus_click_grab = 0, disable_sync = 0, attached = 0, is_remote = 0, frame_bounds = 0x28a7700, shape_region = 0x0, 
  opaque_region = 0x13b73a0, input_region = 0x0, opacity = 255 '\377', extended_sync_request_counter = 1, struts = 0x0, 
  sync_request_counter = 27262986, sync_request_serial = 18, sync_request_wait_serial = 0, sync_request_timeout_id = 0, 
  sync_request_alarm = 14680125, unmaps_pending = 0, stable_sequence = 5, net_wm_user_time = 504232665, user_time_window = 27262984, 
  has_custom_frame_extents = 0, custom_frame_extents = {left = 0, right = 0, top = 0, bottom = 0}, rect = {x = 0, y = 0, width = 737, 
    height = 503}, saved_rect = {x = 0, y = 0, width = 735, height = 463}, unconstrained_rect = {x = 0, y = 0, width = 737, height = 503}, 
  buffer_rect = {x = -9, y = -8, width = 755, height = 520}, icon_geometry = {x = 0, y = 0, width = 0, height = 0}, size_hints = {
    flags = 1008, x = 0, y = 0, width = 735, height = 463, min_width = 312, min_height = 85, max_width = 2147483647, 
    max_height = 2147483647, width_inc = 9, height_inc = 18, min_aspect = {x = 1, y = 2147483647}, max_aspect = {x = 2147483647, y = 1}, 
    base_width = 15, base_height = 31, win_gravity = 1}, layer = META_LAYER_NORMAL, stack_position = 1, dialog_pid = -1, is_alive = 0, 
  group = 0x2dc7470, compositor_private = 0x1bfb310 [MetaWindowActor], attached_focus_window = 0x0, tile_match = 0x0, bypass_compositor = 0}
(gdb) l
5615           * meta_screen_get_current_monitor() is slightly different: the former
5616           * refers to the monitor which contains the largest part of the window,
5617           * the latter to the one where the pointer is located.
5618           */
5619          monitor = meta_screen_get_current_monitor_info_for_pos (window->screen, x, y);
5620          meta_window_get_work_area_for_monitor (window,
5621                                                 monitor->number,
5622                                                 &work_area);
5623
5624          /* Check if the cursor is in a position which triggers tiling
(gdb) p window->screen
$5 = 0x63d5a0 [MetaScreen]
(gdb) p *window->screen
$6 = {parent_instance = {g_type_instance = {g_class = 0xb6fb70}, ref_count = 2, qdata = 0x11ea851}, display = 0xa5b2b0 [MetaDisplay], 
  number = 0, screen_name = 0x97c2c0 "127.0.0.1:1.0", xscreen = 0x8c6f70, xroot = 617, default_depth = 24, default_xvisual = 0x8ca460, 
  rect = {x = 0, y = 0, width = 1152, height = 864}, ui = 0xb6f240, tile_preview_timeout_id = 0, 
  active_workspace = 0x894810 [MetaWorkspace], no_focus_window = 14680075, workspaces = 0x9008e0 = {0x894810, 0xbf9340, 0xbf92b0, 0xbf9220}, 
  stack = 0xc8c810, stack_tracker = 0xb6e1b0, current_cursor = META_CURSOR_MOVE_OR_RESIZE_WINDOW, wm_sn_selection_window = 14680069, 
  wm_sn_atom = 396, wm_sn_timestamp = 504154520, monitor_infos = 0x0, n_monitor_infos = 0, primary_monitor_index = 0, 
  has_xinerama_indices = 0, last_monitor_index = 0, sn_context = 0xcc4b90, startup_sequences = 0x0, startup_sequence_timeout = 0, 
  wm_cm_selection_window = 14680070, wm_cm_timestamp = 504154590, work_area_later = 0, check_fullscreen_later = 0, rows_of_workspaces = -1, 
  columns_of_workspaces = 1, starting_corner = META_SCREEN_TOPLEFT, vertical_workspaces = 0, workspace_layout_overridden = 1, 
  keys_grabbed = 1, closing = 0, guard_window = 14680085, composite_overlay_window = 77}
(gdb) 

(gdb) l  meta_screen_get_current_monitor_info_for_pos
1610
1611    const MetaMonitorInfo*
1612    meta_screen_get_current_monitor_info_for_pos (MetaScreen *screen,
1613                                                  int x,
1614                                                  int y)
1615    {
1616        int monitor_index;
1617        monitor_index = meta_screen_get_current_monitor_for_pos (screen, x, y);
1618        return &screen->monitor_infos[monitor_index];
1619    }
(gdb) l meta_screen_get_current_monitor_for_pos
1631     */
1632    int
1633    meta_screen_get_current_monitor_for_pos (MetaScreen *screen,
1634                                             int x,
1635                                             int y)
1636    {
1637      if (screen->n_monitor_infos == 1)
1638        return 0;
1639      else if (screen->display->monitor_cache_invalidated)
1640        {


(gdb) p window->screen->monitor_infos
$7 = (MetaMonitorInfo *) 0x0
(gdb) 
(gdb) ptype window->screen->monitor_infos
type = struct _MetaMonitorInfo {
    int number;
    int xinerama_index;
    MetaRectangle rect;
    gboolean is_primary;
    gboolean is_presentation;
    gboolean in_fullscreen;
    glong winsys_id;
} *
(gdb)


Note You need to log in before you can comment on or make changes to this bug.