This patch causes a flush of the local host TLBs after any modification of the linearpagetable mapping. This was not needed when vmenter/vmexit always had the side effect of flushing host TLBs. But, with SVM ASIDs, it is possible to: (1) Update CR3 update, (2) vmenter the guest, and (3) and vmexit due to a page fault all without an intervening host TLB flush. Then the page fault code could use the linear pagetable to read a top-level shadow page table entry. But, without this change, it would fetch the wrong value due to a stale TLB. This code applies to unstable. We also have a 3.1.2 version available upon request. Signed-off-by: Robert Phillips <rphillips@virtualiron.com> Signed-off-by: Ben Guthro <bguthro@virtualiron.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Apologies. The prior version caused build errors in unstable. Please use the attached version instead Ben Guthro wrote:> This patch causes a flush of the local host TLBs after any > modification of the linearpagetable mapping. > > This was not needed when vmenter/vmexit always had the side effect of > flushing host TLBs. > > But, with SVM ASIDs, it is possible to: > (1) Update CR3 update, > (2) vmenter the guest, and > (3) and vmexit due to a page fault > all without an intervening host TLB flush. > > Then the page fault code could use the linear pagetable > to read a top-level shadow page table entry. > > But, without this change, it would fetch the wrong value > due to a stale TLB. > > This code applies to unstable. > We also have a 3.1.2 version available upon request. > > Signed-off-by: Robert Phillips <rphillips@virtualiron.com> > Signed-off-by: Ben Guthro <bguthro@virtualiron.com> >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel