Avi Kivity wrote: > On 11/16/2009 07:00 PM, Jan Kiszka wrote: >> This patch aims at addressing the mp_state writeback issue in a cleaner >> fashion. > > What's the issue? the fact that mp_state is updated whenever state is > synchronized, while it could be simultaneously updated from other vcpus > (which latter updates are then lost)? Right, the issue b8a7857071 addressed. But that approach spreads more kvm_* fragments in unrelated qemu code, e.g. the monitor, and fails to update other parts (gdbstub). And it doesn't care about what happens if kvm is off at build or runtime. Such things are better addressed in upstream by encapsulating kvm calls in synchronization points. > >> By introducing additional information about the scope of the >> scheduled vcpu state writeback, we can simply skin mp_state (and maybe >> other specific states in the future) when updating the in-kernel state. >> >> The writeback scope is defined when calling cpu_synchronize_state. It >> accumulated, ie. once a full writeback was requested, this will stick >> until it was performed. >> > > Maybe it's just simpler to divorce mp_state from the rest of the state. That won't solve the core issue. mp_state *is* part of the state, and needs to be read (to update halted) and sometimes also written when the state was hard reset. Jan
Attachment:
signature.asc
Description: OpenPGP digital signature