[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v6 2/2] xen: move TLB-flush filtering out into populate_physmap during vm creation
On Tue, 2016-09-20 at 12:20 +0100, George Dunlap wrote: > On 20/09/16 03:31, Dongli Zhang wrote: > > > > This patch implemented parts of TODO left in commit id > > a902c12ee45fc9389eb8fe54eeddaf267a555c58 (More efficient TLB-flush > > filtering in alloc_heap_pages()). It moved TLB-flush filtering out > > into > > populate_physmap. Because of TLB-flush in alloc_heap_pages, it's > > very slow > > to create a guest with memory size of more than 100GB on host with > > 100+ > > cpus. > > > > This patch introduced a "MEMF_no_tlbflush" bit to memflags to > > indicate > > whether TLB-flush should be done in alloc_heap_pages or its caller > > populate_physmap. Once this bit is set in memflags, > > alloc_heap_pages will > > ignore TLB-flush. To use this bit after vm is created might lead to > > security issue, that is, this would make pages accessible to the > > guest B, > > when guest A may still have a cached mapping to them. > > > > Therefore, this patch also introduced a "creation_finished" field > > to struct > > domain to indicate whether this domain has ever got unpaused by > > hypervisor. > > MEMF_no_tlbflush can be set only during vm creation phase when > > creation_finished is still false before this domain gets unpaused > > for the > > first time. > > > > Signed-off-by: Dongli Zhang <dongli.zhang@xxxxxxxxxx> > > Acked-by: George Dunlap <george.dunlap@xxxxxxxxxx> > FWIW, and if I'm still in time: Reviewed-by: Dario Faggioli <dario.faggioli@xxxxxxxxxx> Regards, Dario -- <<This happens because I choose it to happen!>> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) Attachment:
signature.asc _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |