[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/4] x86/hypervisor: pass flags to hypervisor_flush_tlb
On Thu, Feb 13, 2020 at 10:29:16AM +0000, Wei Liu wrote: > On Thu, Feb 13, 2020 at 08:48:39AM +0000, Durrant, Paul wrote: > > > -----Original Message----- > > > From: Roger Pau Monné <roger.pau@xxxxxxxxxx> > > > Sent: 12 February 2020 18:01 > > > To: Wei Liu <wl@xxxxxxx> > > > Cc: Xen Development List <xen-devel@xxxxxxxxxxxxxxxxxxxx>; Durrant, Paul > > > <pdurrant@xxxxxxxxxxxx>; Michael Kelley <mikelley@xxxxxxxxxxxxx>; Wei Liu > > > <liuwe@xxxxxxxxxxxxx>; Jan Beulich <jbeulich@xxxxxxxx>; Andrew Cooper > > > <andrew.cooper3@xxxxxxxxxx> > > > Subject: Re: [PATCH 2/4] x86/hypervisor: pass flags to > > > hypervisor_flush_tlb > > > > > > On Wed, Feb 12, 2020 at 04:09:16PM +0000, Wei Liu wrote: > > > > Hyper-V's L0 assisted flush has fine-grained control over what gets > > > > flushed. We need all the flags available to make the best decisions > > > > possible. > > > > > > > > No functional change because Xen's implementation doesn't care about > > > > what is passed to it. > > > > > > While it's certainly fine to pass a flags field with more information, > > > the flush flags for Xen can also contain FLUSH_CACHE, FLUSH_VCPU_STATE > > > or FLUSH_ROOT_PGTBL, can you add an assert that those never get passed > > > to the flush hook? > > > > > > IMO we should define a mask with FLUSH_TLB, FLUSH_TLB_GLOBAL, > > > FLUSH_VA_VALID and FLUSH_ORDER_MASK and assert that those are the only > > > valid flags to be used for the hypervisor assisted flush hook. > > > > > > > Agreed that this should be abstracted; we certainly don't want to have > > various bits of Xen needing to know what hypervisor it is running on > > top of. > > OK. I can introduce a FLUSH_TLB_FLAGS for all things pertaining to TLB > -- the four things mentioned in Roger's reply. If I'm not mistaken flush_area_mask in Roger's patch already filters out all the unwanted flags, so my code is correct as-is. I can add #define FLUSH_TLB_FLAGS_MASK (FLUSH_TLB | FLUSH_TLB_GLOBAL | FLUSH_VA_VALID | \ FLUSH_ORDER_MASK) and use it in flush_area_mask to replace the longer string there. Wei. > > Wei. > > > > > Paul > > > > > > > Thanks, Roger. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |