On 14/09/2016 10:25, Peter Xu wrote: > (Note: we still have pending discussions on how IOMMU notifier > interface should be, assuming that is not a blocker for posting v5 of > this one) > > V5: > - squash spapr_tce_notify_{started|stopped} into > spapr_tce_notify_flag_changed [David] > - in spapr_tce_notify_flag_changed: check flags against "!= > IOMMU_NOTIFIER_NONE", but not "== IOMMU_NOTIFIER_ALL" [David] > - add r-b for David on patch 3
Looks good, thanks. If David doesn't reply further I'll merge this. Paolo > V4: > - change "notifier_caps" into "notifier_flags" [David] > - rename IOMMU_NOTIFIER_{CHANGE|INVALIDATION} with MAP/UNMAP [David] > - introduce IOMMUOps.notify_flag_changed, to replace notify_started > and notify_stopped [David, Paolo] > > V3: > - use QLIST instead of embedding Notifier into IOMMUNotifier [Paolo] > - fix a build error for ppc64-softmmu > > The idea originates from one of Alex's reply: > > https://lists.gnu.org/archive/html/qemu-devel/2016-09/msg00254.html > > But after further discussions, it seems that only adding a simple type > for notifier is not enough. This series introduced IOMMUNotifier > struct to replace the old Notifier interface. Along with it, we can > provide registration for one (or multiple) of the IOMMU notifications: > > - cache invalidations > - entry changes > > This is a support material for Jason's vhost dmar patchset. > > Please read commit messages for detailed information. Thanks, > > Peter Xu (3): > memory: introduce IOMMUNotifier and its caps > memory: introduce IOMMUOps.notify_flag_changed > intel_iommu: allow UNMAP notifiers > > hw/i386/intel_iommu.c | 18 ++++++++----- > hw/ppc/spapr_iommu.c | 18 +++++++------ > hw/vfio/common.c | 3 ++- > include/exec/memory.h | 47 +++++++++++++++++++++++++-------- > include/hw/vfio/vfio-common.h | 2 +- > memory.c | 60 > +++++++++++++++++++++++++++++++++---------- > 6 files changed, 107 insertions(+), 41 deletions(-) >