GNOME Bugzilla – Bug 784867
SIGFPE / division by zero in meta_window_wayland_move_resize_internal
Last modified: 2017-07-17 01:59:11 UTC
In summary there is a division by zero because monitor_scale is 0. Probably because the external display flickers several times before the DP link stabilizes. This is gnome-shell doing Wayland. It is a laptop with one internal and one external 4K display. I filed this twice in Fedora / Redhat Bugzilla but I'm beginning to wonder if anyone has noticed or forwarded it. See https://bugzilla.redhat.com/show_bug.cgi?id=1413766 and https://bugzilla.redhat.com/show_bug.cgi?id=1461173 A snippit from the backtrace you can find in full at the Redhat bug is attached.
Created attachment 355450 [details] backtrace snippet
Created attachment 355479 [details] [review] wayland/window: Update toplevel main monitor before non-toplevel When updating the main monitor, make sure to update the toplevel main monitor before trying to use that as the main monitor for non-toplevel windows (such as popups). Without this, when the main monitor is updated as a side effect to monitors being changed (for example due to a hot plug event, or coming back from being suspended) the main monitor pointer may, after 'monitors-changed' has completed, point to freed memory resulting in undefined behaviour.
Review of attachment 355479 [details] [review]: Makes sense to me
Attachment 355479 [details] pushed as 5d7b94a - wayland/window: Update toplevel main monitor before non-toplevel