On 18/12/2014 13:24, Alexander Graf wrote: > That's the nice thing about transactions - they guarantee that no other > CPU accesses the same cache line at the same time. So you're safe > against other vcpus even without blocking them manually. > > For the non-transactional implementation we probably would need an "IPI > others and halt them until we're done with the critical section" > approach. But I really wouldn't concentrate on making things fast on old > CPUs.
The non-transactional implementation can use softmmu to trap access to the page from other VCPUs. This makes it possible to implement (at the cost of speed) the same semantics on all hosts. Paolo