From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55599) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bhGMi-0001sa-Db for qemu-devel@nongnu.org; Tue, 06 Sep 2016 09:24:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bhGMe-0004uk-FP for qemu-devel@nongnu.org; Tue, 06 Sep 2016 09:24:40 -0400 Received: from mx1.redhat.com ([209.132.183.28]:45234) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bhGMe-0004ub-9T for qemu-devel@nongnu.org; Tue, 06 Sep 2016 09:24:36 -0400 From: Peter Xu Date: Tue, 6 Sep 2016 21:24:24 +0800 Message-Id: <1473168267-25673-1-git-send-email-peterx@redhat.com> Subject: [Qemu-devel] [PATCH v2 0/3] Introduce IOMMUNotifier struct List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: dgibson@redhat.com, jasowang@redhat.com, mst@redhat.com, pbonzini@redhat.com, cornelia.huck@de.ibm.com, wexu@redhat.com, vkaplans@redhat.com, alex.williamson@redhat.com, peterx@redhat.com This is merely a re-written for v1 (so no change log provided)... But anyway let's call it v2. 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: generalize iommu_ops.notify_started to notifier_add intel_iommu: allow invalidation typed notifiers hw/i386/intel_iommu.c | 16 +++++++++------ hw/ppc/spapr_iommu.c | 18 +++++++++++------ hw/vfio/common.c | 5 +++-- include/exec/memory.h | 45 +++++++++++++++++++++++++++++++++---------- include/hw/ppc/spapr.h | 1 + include/hw/vfio/vfio-common.h | 2 +- memory.c | 45 ++++++++++++++++++++++++++++++------------- 7 files changed, 94 insertions(+), 38 deletions(-) -- 2.7.4