On Sat, Dec 02, 2023 at 05:20:41PM +0800, Yan Zhao wrote: > On KVM invalidates mappings that are shared to IOMMU stage 2 paging > structures, IOMMU driver needs to invalidate hardware TLBs accordingly. > > The new op cache_invalidate_kvm is called from IOMMUFD to invalidate > hardware TLBs upon receiving invalidation notifications from KVM. Why? SVA hooks the invalidation directly to the mm, shouldn't KVM also hook the invalidation directly from the kvm? Why do we need to call a chain of function pointers? iommufd isn't adding any value in the chain here. Jason