8.3. 在虚拟环境中有伪装的软锁定

软锁定在物理主机上触发,如什么是软锁定中所述,这通常代表内核或硬件漏洞。在虚拟环境中的客户端操作系统中会出现同样的问题。

主机的高工作负载或者某些特定资源(如内存)的高竞争,通常会导致错误的软锁定触发。这是因为主机可能会调度出客户端 CPU 的时间超过 20 秒。然后,当客户机 CPU 再次被调度到在主机上运行时,它会遇到一个时间跳转(time jump),这会触发到时计时器。计时器还包括 watchdog hrtimer,因此可以在客户机 CPU 上报告软锁定。

因为虚拟化环境中的软锁定可能是假的,所以您不应该启用在客户端 CPU 上报告软锁定时导致系统 panic 的内核参数。

重要

若要了解客户机中的软锁定,必须了解,主机会作为一个任务调度客户机,客户机然后会调度自己的任务。