[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 0/3] Introduce IOMMUNotifier struct
From: |
Peter Xu |
Subject: |
[Qemu-devel] [PATCH v5 0/3] Introduce IOMMUNotifier struct |
Date: |
Wed, 14 Sep 2016 16:25:45 +0800 |
(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
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(-)
--
2.7.4