我的一台服务器上有两个 CPU 被锁定了。来自dmesg
:
BUG: soft lockup - CPU#1 stuck for 23s! [vmx-vcpu-0:6148]
然后:
BUG: soft lockup - CPU#2 stuck for 23s! [vmx-vcpu-0:6148]
我试图弄清楚为什么会发生这种情况;处理器有 4 个内核,并带有超线程,因此操作系统将其视为 8 个内核。但我的主要问题与此有关:
当从 SSH 查看htop
后冻结时,我发现 CPU #2 和 #3(猜测它们对应于 dmesg 中的 #1 和 #2)都停留在 100%,显然没有进程使用它们:
所有进程的 CPU 使用率均未超过 5%。为什么这些进程会显示 100% 的利用率?它们是否仍被视为被内核锁定?
答案1
正如消息所报告的,这是内核级代码的一个错误。
这些 CPU 停留在内核代码 (vmx-cpu-0) 中,长期无法产生 CPU 控制权。
至于该怎么做 - 向 VMware 开具一张票据。vmx-cpu-0
看起来像他们的代码,但我不完全确定。