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 ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel