[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Re: [PATCH] EPT: Flush running cpus, add mask to flush when scheduled in
On 22/09/2009 08:07, "Jan Beulich" <JBeulich@xxxxxxxxxx> wrote: > Passing a pointer to the global cpu mask looks racy here: What if a CPU > disappears from domain_dirty_cpumask under your feet? I'm fixing this race before I apply the patch. > Also, merely using cpus_complement() here seem inefficient: It should be > possible to accumulate the flush activity, and avoid re-flushing on a CPU > which e.g. got flushed on the second from the last run through this code > (and not dirtied afterwards). I.e. I'd think there should be cpus_andnot() > here, and setting of the bits as CPUs get dirtied. I don't see how that is possible, as domain_dirty_cpumask can have changed arbitrarily since the previous invocation of ept_sync_domain(), as can the EPT tables. We have to assume every CPU has potentially stale cached mappings. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |