David P. Reed wrote: > Avi Kivity wrote: >> kvm will forward a virtual machine's writes to port 0x80 to the real >> port. The reason is that the write is much faster than exiting and >> emulating it; the difference is measurable when compiling kernels. >> >> Now if the cause is simply writing to port 0x80, then we must stop >> doing that. But if the reason is the back-to-back writes, when we >> can keep it, since the other writes will be trapped by kvm and >> emulated. Do you which is the case? >> > As for kvm, I don't have enough info to know anything about that. Is > there a test you'd like me to try? >
I have a test, but I see that it is broken for mainline. I'll update it eventually, but... > I think you are also asking if the crash on these laptops is caused > only by back-to-back writes. Actually, it doesn't seem to matter if > they are back to back. I can cause the crash if the writes to 80 are > very much spread out in time - it seems only to matter how many of > them get executed - almost as if there is a buffer overflow. (And of > course if you do back to back writes to other ports that are > apparently fully unused, such as 0xED on my machine, no crash occurs). > > I believe (though no one seems to have confirming documentation from > the chipset or motherboard vendor) that port 80 is actually functional > for some unknown function on these machines. (They do respond to > "in" instructions faster than a bus cycle abort does - more evidence). That seems to be sufficient evidence for me to remove port 0x80 pass-through from kvm and emulate it instead. Given that port 80 writes take 1 microsecond, and that an in-kernel exit handler takes a similar amount of time, there won't be any significant performance loss. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel