At 17:37 +0000 on 06 Nov (1446831437), David Vrabel wrote:
> Holding the p2m lock while calling ept_sync_domain() is very expensive
> since it does a on_selected_cpus() call.  IPIs on many socket machines
> can be very slows and on_selected_cpus() is serialized.
> 
> Defer the invalidate until the p2m lock is released.  Since the processor
> may cache partial translations, we also need to make sure any page table
> pages to be freed are not freed until the invalidate is complete.  Such
> pages are temporarily stored an per-PCPU list.

That seems like it could get messy if a PCPU might have multiple p2ms
locked at once (e.g. nested HAP, altp2m).  I think a per-p2m list
would be more obviously correct, and not too expensive.

Cheers,

Tim.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to