19.10:使用触摸屏时 gnome-shell 崩溃

19.10:使用触摸屏时 gnome-shell 崩溃

我的问题是关于 gnome-shell 和触摸屏。

我有一台戴尔 xps 13,装有最新的 ubuntu 19.10。

在任何应用程序、游戏、浏览器等中使用触摸屏手势时,大约 2 或 3 分钟后,gnome-shell 就会崩溃。

我认为该问题是在 11 月底更新后首次出现的。

最佳/PS

系统日志说:

   Jan 13 16:28:02 q gnome-shell[7160]: Object Meta.BackgroundActor (0x55db68663270), has been already deallocated — impossible to access it. This might be caused by the object having been destroyed from C code using something such as destroy(), dispose(), or remove() vfuncs.

Jan 13 16:28:02 q gnome-shell[7160]: JS ERROR: Error: Argument 'instance' (type interface) may not be null#012_init/GObject.Object.prototype.disconnect@resource:///org/gnome/gjs/modules/overrides/GObject.js:508:16#012_onDestroy@/usr/share/gnome-shell/extensions/desktop-icons@csoriano/desktopGrid.js:210:13#012DesktopGrid</<@/usr/share/gnome-shell/extensions/desktop-icons@csoriano/desktopGrid.js:115:45

Jan 13 16:28:02 q gnome-shell[7160]: == Stack trace for context 0x55db67641390 ==

Jan 13 16:28:02 q gnome-shell[7160]: #0   7fff8f0c2090 b   resource:///org/gnome/gjs/modules/overrides/GObject.js:508 (7f297fcad8b0 @ 25)

Jan 13 16:28:02 q gnome-shell[7160]: #1   55db6bc1c968 i   /usr/share/gnome-shell/extensions/desktop-icons@csoriano/desktopGrid.js:210 (7f297d9d1dc0 @ 75)

Jan 13 16:28:02 q gnome-shell[7160]: #2   55db6bc1c8f0 i   /usr/share/gnome-shell/extensions/desktop-icons@csoriano/desktopGrid.js:115 (7f297d9d19d0 @ 12)

Jan 13 16:28:02 q gnome-shell[7160]: clutter_actor_iter_next: assertion 'ri->age == ri->root->priv->age' failed

Jan 13 16:28:02 q gnome-shell[7160]: GNOME Shell crashed with signal 11

Jan 13 16:28:02 q gnome-shell[7160]: == Stack trace for context 0x55db67641390 ==

Jan 13 16:28:02 q ibus-daemon[7215]: GChildWatchSource: Exit status of a child process was requested but ECHILD was received by waitpid(). See the documentation of g_child_watch_source_new() for possible causes.

Jan 13 16:28:02 q systemd[2088]: gnome-shell-x11.service: Main process exited, code=dumped, status=11/SEGV

Jan 13 16:28:02 q systemd[2088]: gnome-shell-x11.service: Failed with result 'core-dump'.

Jan 13 16:28:02 q systemd[2088]: gnome-shell-x11.service: Service has no hold-off time (RestartSec=0), scheduling restart.

Jan 13 16:28:02 q systemd[2088]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 2.

Jan 13 16:28:02 q systemd[2088]: Stopped target GNOME X11 Session (session: ubuntu).

Jan 13 16:28:02 q systemd[2088]: Stopping GNOME X11 Session (session: ubuntu).

Jan 13 16:28:02 q systemd[2088]: Stopped target GNOME X11 Session.

Jan 13 16:28:02 q systemd[2088]: Stopping GNOME X11 Session.

Jan 13 16:28:02 q systemd[2088]: Stopped target GNOME Shell on X11.

Jan 13 16:28:02 q systemd[2088]: Stopping GNOME Shell on X11.

Jan 13 16:28:02 q systemd[2088]: Stopped GNOME Shell on X11.

答案1

虽然我不知道细节,因为我对 Xorg 代码没有任何了解或经验,但我在 HP Elitebook x360 1030 G2 上遇到了完全相同的问题。我只在几个地方找到了关于此崩溃的讨论:你的问题就在这里,这个 GTK 错误,Gnome 开发人员坚持认为这是别人的问题,并且这个 Xorg 错误。似乎一年前就已经有一个修复程序合并到 X 服务器中,但是直到最近才被反向移植(根据对 Xorg 错误的讨论)。这使得我的系统或多或少无法使用 Gnome,因此我也希望修复程序最终能够进入 Ubuntu。看来 Ubuntu 20.04 将包含带有修复程序的 xserver-xorg-core 软件包版本,因此更新到每日发布版本可能会暂时有所帮助。但是,这些每日发布版本(理论上)不如标准发布版本稳定,因此请在使用这条路线之前备份所有文件。不幸的是,除了每日发布版本之外,您唯一的好选择就是等待它被修复。

答案2

这次崩溃是由于 Mutter(GNOME shell 底层窗口管理器)中的一个错误造成的,作为 GNOME shell 维护者向我解释。根据您启用的 GNOME 扩展,系统日志中的确切消息可能会略有不同,因此如果您有略微不同的日志但症状相同,则可能是同一个问题。

可以追踪 mutter 中的最终根源错误这里,现在有一个修复程序,我已经测试了一天,似乎有效。当任何人读到这篇文章时,补丁可能已经部署了,但我还是会解释如何安装它。

你可以通过运行来检查mutter和包的版本。你应该看到类似这样的内容:libmutterdpkg -l | grep mutter

ii  gir1.2-mutter-6:amd64                      3.36.4-0ubuntu0.20.04.2               amd64        GObject introspection data for Mutter
ii  libmutter-6-0:amd64                        3.36.4-0ubuntu0.20.04.2               amd64        window manager library from the Mutter window manager
ii  mutter                                     3.36.4-0ubuntu0.20.04.2               amd64        Example window manager using GNOME's window manager library
ii  mutter-common                              3.36.4-0ubuntu0.20.04.2               all          shared files for the Mutter window manager

最低版本libmutter应为 ,3.36.4以便您获得修复。如果您将来阅读本文并遇到类似症状,但您的libmutter版本更高,则此答案与您无关。否则,请打开软件更新管理器(software-properties-gtk,也称为“软件和更新”)并激活预发布更新,如以下屏幕截图所示:

在此处输入图片描述

您现在可以libmutter使用以下命令进行升级sudo apt install libmutter-6-0/focal-proposed如果你使用的是 Ubuntu 20.04, “Focal Fossa”。对于其他版本的 Ubuntu,请替换focal相应的形容词,例如bionic“Bionic Beaver”。如果版本低于上面显示的版本,您可能还需要升级mutter,我不确定。

安装更新后重新启动,如果愿意,您可以在之后的软件和更新程序中禁用预发布更新。

相关内容