为什么 Steam 运行时“x86/split lock detection”会向我的系统日志发送垃圾邮件?

为什么 Steam 运行时“x86/split lock detection”会向我的系统日志发送垃圾邮件?

我有一台 ThinkPad X1C9 笔记本电脑,通过雷电连接 3 个显示器,并在外部 GPU 机箱中安装了 nVidia 1050Ti。我的系统日志中充斥着以下内容,为什么?

谷歌搜索 CJobMgr 让我找到了 Steam。关闭 Steam 后,它就停止了。如果我再次打开 Steam,它会立即再次开始。

[Tue Aug 10 10:17:42 2021] x86/split lock detection: #AC: CJobMgr::m_Work/28558 took a split_lock trap at address: 0xf21b3263
[Tue Aug 10 10:17:43 2021] x86/split lock detection: #AC: CJobMgr::m_Work/28520 took a split_lock trap at address: 0xf21b3263
[Tue Aug 10 10:17:43 2021] x86/split lock detection: #AC: CJobMgr::m_Work/28520 took a split_lock trap at address: 0xf21b3263
[Tue Aug 10 10:17:43 2021] x86/split lock detection: #AC: CJobMgr::m_Work/28558 took a split_lock trap at address: 0xf21b3263
[Tue Aug 10 10:17:44 2021] x86/split lock detection: #AC: CJobMgr::m_Work/28520 took a split_lock trap at address: 0xf21b3263
[Tue Aug 10 10:17:45 2021] x86/split lock detection: #AC: CJobMgr::m_Work/28558 took a split_lock trap at address: 0xf21b3263
alan@ac:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 21.04
Release:        21.04
Codename:       hirsute
alan@ac:~$ uname -a
Linux ac 5.11.0-25-generic #27-Ubuntu SMP Fri Jul 9 23:06:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

我在搜索过程中找到了以下资源,但它们没有帮助:

我已向 Steam 客户端上游提交了此问题,因为这是触发此问题的唯一原因:

答案1

正如您所发现的,这是由 Steam 触发的,尽管内核不鼓励使用分割锁,但它仍使用分割锁。LWN.net 上有一篇关于此主题的最新文章:https://lwn.net/Articles/911219/

如其中所提到的,自 Linux 5.7 起,当检测到分割锁时,您可以从以下行为中进行选择:

它使内核能够响应分割锁操作导致的陷阱,并为该响应提供三种模式,可通过split_lock_detect=命令行参数选择:

  • off导致内核的行为与以前一样;不会检测到分割锁操作,并且在发生分割锁操作时不会执行任何操作。
  • warn(默认)当检测到分割锁操作时,会导致(速率限制)警告进入系统日志。
  • fatal导致内核立即终止(使用SIGBUS)任何尝试分割锁操作的进程。

如果你想让这些警告静音,请设置split_lock_detect=off 如 Wiki 中所述。同时我们等待 Valve 修复这个问题。

相关内容