[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1497479] Re: memory corruption with migrate/savevm in
[Qemu-devel] [Bug 1497479] Re: memory corruption with migrate/savevm in TCG mode
Wed, 05 Sep 2018 08:48:52 -0000
Looking through old bug tickets... can you still reproduce this issue
with the latest version of QEMU? Or could we close this ticket nowadays?
If you still can reproduce the issue, please send your patch to the
qemu-devel mailing list for discussion (we generally do not take patches
from the bugtracker). See https://wiki.qemu.org/Contribute/SubmitAPatch
** Changed in: qemu
Status: New => Incomplete
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
memory corruption with migrate/savevm in TCG mode
Status in QEMU:
QEMU releases 2.3.1 and lower are forgetting to flush TLBs before
enabling the global dirty pages log and entering the final stage of
saving the VM.
The situation is the following:
1. TLB misses is the only way for page dirtying in the TCG mode.
2. If TLB is always hit by a running VM code during the execution of the
`ram_save_iterate' by migration thread then these pages are missing in the
dirty log. The TLB is always hit for instance when the VM is mostly idling and
the Kernel only handles APIC timer interrupts.
3. These pages are then missed during `ram_save_complete' stage.
4. This makes memory content in a saved VM state differ from the actual VM
5. If the affected memory pages contain some Kernel data structures these can
be corrupted by this memory inconsistency, causing Kernel to Oops after loading
the saved state.
A proposed solution is to flush TLB when `log_global_start' is called.
Here is the patch:
To manage notifications about this bug go to:
|[Prev in Thread]
||[Next in Thread]|
- [Qemu-devel] [Bug 1497479] Re: memory corruption with migrate/savevm in TCG mode,
Thomas Huth <=