>>> On 01.06.16 at 11:05, <quan...@intel.com> wrote: > From: Quan Xu <quan...@intel.com> > > Today we do Device-TLB flush synchronization after issuing flush > requests for all ATS devices belonging to a VM. Doing so however > imposes a limitation, i.e. that we can not figure out which flush > request is blocked in the flush queue list, based on VT-d spec. > > To prepare correct Device-TLB flush timeout handling in next patch, > we change the behavior to synchronize for every Device-TLB flush > request. So the Device-TLB flush interface is changed a little bit, > by checking timeout within the function instead of outside of function. > > Accordingly we also do a similar change for flush interfaces of > IOTLB/IEC/Context, i.e. moving synchronization into the function. > Since there is no user of a non-synced interface, we just rename > existing ones with _sync suffix. > > v11: > 1. Add __must_check annotation to invalidate_sync(). > 2. Remove the redundant invalidate_sync() in flush_iotlb_qi(). > 3. Refactor invalidate_sync() to indicate whether we need to flush > device IOTLB or not (I'll change it back in next patch, as I'll > add a specific function - dev_invalidate_sync() for device IOTLB > invalidation). > > Signed-off-by: Quan Xu <quan...@intel.com>
Reviewed-by: Jan Beulich <jbeul...@suse.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel