Xorg

如何配置 Xwayland(將 NoTrapSignals 設置為正確的值)

  • March 24, 2018

我創建了/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 伺服器在崩潰時仍然能夠這樣做。

我說這是 NoTrapSignals 的正確值,因為它本質上是一個脆弱的功能,而 AFAICT 在非特權 Xwayland 伺服器中毫無意義。這不像過去糟糕的使用者模式設置,核心無法將顯示重置為文本模式,所以您迫切希望 X 伺服器在崩潰時仍然能夠這樣做。

如果這是正確的,答案是這是 Xwayland 中的一個錯誤,應該修復 Xwayland 以使其正常執行,而不需要一些配置文件。


Xorg比較執行和Xwayland下的嘗試strace,表明Xwayland不查找任何配置文件,僅查找 XKB 數據文件。

如果您作為選項通過/usr/libexec/Xorg,兩者都會列印使用建議。Xorg 包含一個“設備相關使用”部分,其中包含設置日誌文件或配置文件的選項。Xwayland 沒有提到這些。所以 Xwayland 似乎不像 Xorg 那樣可配置。/usr/bin/Xwayland``--help

從技術上講,Xwayland 似乎在-core“在致命錯誤時生成核心轉儲”的情況下執行。Xorg 不支持,儘管它聲稱支持相同的選項。從目前的證據來看,這似乎是無關緊要的,特別是因為 NoTrapSignals 不影響是否生成核心轉儲。

選項“NoTrapSignals”“布爾”

這可以防止 Xorg 伺服器擷取一系列意外的致命信號並乾淨地退出。相反,Xorg 伺服器會死掉並丟棄發生故障的核心。預設行為是 Xorg 伺服器乾淨地退出,但仍刪除核心文件。通常,除非您正在調試 Xorg 伺服器問題並且知道如何處理後果,否則您永遠不想使用此選項。

引用自:https://unix.stackexchange.com/questions/433184