如何配置 Xwayland(将 NoTrapSignals 设置为正确的值)

如何配置 Xwayland(将 NoTrapSignals 设置为正确的值)

我创造了/etc/X11/xorg.conf

Section "ServerFlags"
    Option "NoTrapSignals" "true"
EndSection

如果我启动使用 X 而不是 Wayland 的 GNOME 会话,它会成功影响我的 GNOME 会话。我已经通过使用 SIGABRT 终止 X 服务器来检查这一点,并验证它不会尝试通过捕获信号来打印它自己的回溯。

然而,配置文件并没有达到我真正想要的效果,即为 Xwayland 实例实现相同的行为,当我与 Wayland 启动正常的 GNOME 会话时,GNOME 也会启动该实例。

我甚至找不到 Xwayland 的日志消息,看看它是否提到了从哪里读取配置!

我注意到Xorg有一个man页面,但Xwayland没有。Xwayland与 ( ) 一起运行的选项均未-rootless -terminate -core -listen 4 -listen 5 -displayfd 6记录在 中man Xorg,但公平地说,GNOME在运行本机 X 会话时也会传递-displayfd给该选项。Xorg

有谁知道如何做到这一点?

环境

  • 软呢帽27
  • 侏儒
  • gnome-session-3.26.1-1.fc27.x86_64
  • xorg-x11-server-Xwayland-1.19.6-5.fc27.x86_64

语境

我遇到了令人恼火的 XWayland 崩溃。我很难从系统保存的核心转储中理解它。我非常想禁用内置的 X 回溯生成器。它只是碍事,回溯生成器本身很容易崩溃,最重要的是通过捕获错误信号,我相信它可以阻止 Linux在内核日志中记录 SIGBUS 错误的确切原因

我说这是 的正确值NoTrapSignals,因为它本质上是一个脆弱的功能,而且 AFAICT 在非特权 Xwayland 服务器中毫无意义。它不像过去糟糕的用户模式设置,内核无法将显示重置为文本模式,因此您迫切希望 X 服务器在崩溃时仍然能够这样做。

答案1

我说这是 NoTrapSignals 的正确值,因为它本质上是一个脆弱的功能,并且 AFAICT 在非特权 Xwayland 服务器中毫无意义。它不像过去糟糕的用户模式设置,内核无法将显示重置为文本模式,因此您迫切希望 X 服务器在崩溃时仍然能够这样做。

如果这是正确的,答案是这是 Xwayland 中的一个错误,并且应该修复 Xwayland 以使其正常运行,而不需要某些配置文件。


比较运行XorgXwayland下的尝试strace,表明Xwayland不查找任何配置文件,仅查找 XKB 数据文件。

如果您作为选项通过,则/usr/libexec/Xorg/usr/bin/Xwayland都会打印使用建议。 --helpXorg 包括“设备相关使用”部分,其中包含设置日志文件或配置文件的选项。 Xwayland 没有提到这些。所以 Xwayland 似乎不像 Xorg 那样是可配置的。

从技术上讲,Xwayland 似乎是在-core“发生致命错误时生成核心转储”的情况下运行的。 Xorg 不支持,尽管它声称支持相同的选项。从到目前为止的证据来看,这似乎是无关紧要的,特别是因为 NoTrapSignals 不会影响是否生成核心转储。

选项“NoTrapSignals”“布尔值”

这可以防止 Xorg 服务器捕获一系列意外的致命信号并干净地退出。相反,Xorg 服务器将死亡并丢弃发生故障的核心。 Xorg 服务器的默认行为是干净退出,但仍会删除核心文件。一般来说,除非您正在调试 Xorg 服务器问题并且知道如何处理后果,否则您永远不想使用此选项。

相关内容