On 03.03.2020 18:20, Roger Pau Monne wrote: > Introduce a specific flag to request a HVM guest TLB flush, which is > an ASID/VPID tickle that forces a guest linear to guest physical TLB > flush for all HVM guests. > > This was previously unconditionally done in each pre_flush call, but > that's not required: HVM guests not using shadow don't require linear > TLB flushes as Xen doesn't modify the guest page tables in that case > (ie: when using HAP). Note that shadow paging code already takes care > of issuing the necessary flushes when the shadow page tables are > modified. > > In order to keep the previous behavior modify all shadow code TLB > flushes to also flush the guest linear to physical TLB, in order to > keep the previous behavior. I haven't looked at each specific shadow > code TLB flush in order to figure out whether it actually requires a > guest TLB flush or not, so there might be room for improvement in that > regard.
I'm still missing a discussion of the safety of the removal of the tickle from the switch_cr3_cr4() path: I don't think it can be excluded offhand that shadow code somewhere relies on this happening as a side effect of write_ptbase(). Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel