Re: [PATCH 1/2] kvm: Fix x86 emulator writeback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Avi Kivity wrote:
Luca Tettamanti wrote:
When the old value and new one are the same the emulator skips the
write; this is undesiderable when the destination is a MMIO area and the
write shall be performed regardless of the previous value. This
optimization breaks e.g. a Linux guest APIC compiled without
X86_GOOD_APIC.

Remove the check and always perform the writeback stage in the
emulation.


Unfortunately, this kills Windows XP (first run with a guest crash, second with a host oops), so I reverted it. I'd guess some operation which doesn't need writeback ends up in the modified code. Previously, the check caused it to skip writeback, but now it writes back random memory, causing a crash.


There are comments around like

    /* Disable writeback. */
    dst.orig_val = dst.val;

Best option is probably to add an explicit disable_writeback flag and set it there.

--
error compiling committee.c: too many arguments to function

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux