[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug 1921082] [NEW] VM crash when process broadcast MCE
From: |
Yao Aili |
Subject: |
[Bug 1921082] [NEW] VM crash when process broadcast MCE |
Date: |
Wed, 24 Mar 2021 08:35:37 -0000 |
Public bug reported:
When i do memory SRAR test for VM, I meet the following issue:
My VM has 16 vCPU, I will inject one UE error to memory which is accessed by
VM, Then host MCE is raised and SIGBUS is send to VM, and qemu take control.
Qemu will check the broadcast attribute by following
cpu_x86_support_mca_broadcast();
Then Qemu may inject MCE to all vCPU, as vCPU is just one process for
HOST, we can't guarantee all the vCPUs will enter MCE hander in 1S sync
time, and the VM may panic.
This issue will be easily fixed by expand monarch_timeout configuration,
but the exact monarch_timeout can't be easily got, as it will depand on
the num of vCPUs and current system schedule status.
I am wondering why VM need broadcast attribute for MCE, When qeme
process MCE event form host, it will always be signaled for one vCPU? If
so, why does qemu need boradcast the MCE event to all vCPUs?
Can weu just deliver LMCE to one specifc vCPU and make this behavior
default?
If anything wrong, Please point out.
** Affects: qemu
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1921082
Title:
VM crash when process broadcast MCE
Status in QEMU:
New
Bug description:
When i do memory SRAR test for VM, I meet the following issue:
My VM has 16 vCPU, I will inject one UE error to memory which is accessed by
VM, Then host MCE is raised and SIGBUS is send to VM, and qemu take control.
Qemu will check the broadcast attribute by following
cpu_x86_support_mca_broadcast();
Then Qemu may inject MCE to all vCPU, as vCPU is just one process for
HOST, we can't guarantee all the vCPUs will enter MCE hander in 1S
sync time, and the VM may panic.
This issue will be easily fixed by expand monarch_timeout
configuration, but the exact monarch_timeout can't be easily got, as
it will depand on the num of vCPUs and current system schedule status.
I am wondering why VM need broadcast attribute for MCE, When qeme
process MCE event form host, it will always be signaled for one vCPU?
If so, why does qemu need boradcast the MCE event to all vCPUs?
Can weu just deliver LMCE to one specifc vCPU and make this behavior
default?
If anything wrong, Please point out.
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1921082/+subscriptions
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Bug 1921082] [NEW] VM crash when process broadcast MCE,
Yao Aili <=