On 03/09/2010 11:44 PM, Anthony Liguori wrote:
Ah yes. For cross tcg environments you can map the memory using mmio
callbacks instead of directly, and issue the appropriate barriers there.
Not good enough unless you want to severely restrict the use of shared
memory within the guest.
For instance, it's going to be useful to assume that you atomic
instructions remain atomic. Crossing architecture boundaries here
makes these assumptions invalid. A barrier is not enough.
You could make the mmio callbacks flow to the shared memory server over
the unix-domain socket, which would then serialize them. Still need to
keep RMWs as single operations. When the host supports it, implement
the operation locally (you can't render cmpxchg16b on i386, for example).
Shared memory only makes sense when using KVM. In fact, we should
actively disable the shared memory device when not using KVM.
Looks like that's the only practical choice.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html