diff mbox

[v7,11/17] memory: provide IOMMU_NOTIFIER_FOREACH macro

Message ID 1486456099-7345-12-git-send-email-peterx@redhat.com
State New
Headers show

Commit Message

Peter Xu Feb. 7, 2017, 8:28 a.m. UTC
Signed-off-by: Peter Xu <peterx@redhat.com>
---
 include/exec/memory.h | 3 +++
 memory.c              | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)

Comments

David Gibson Feb. 10, 2017, 2:30 a.m. UTC | #1
On Tue, Feb 07, 2017 at 04:28:13PM +0800, Peter Xu wrote:
> Signed-off-by: Peter Xu <peterx@redhat.com>

Reviewed-by: David Gibson <david@gibson.dropbear.id.au>

> ---
>  include/exec/memory.h | 3 +++
>  memory.c              | 4 ++--
>  2 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/include/exec/memory.h b/include/exec/memory.h
> index 805a88a..f76e174 100644
> --- a/include/exec/memory.h
> +++ b/include/exec/memory.h
> @@ -239,6 +239,9 @@ struct MemoryRegion {
>      IOMMUNotifierFlag iommu_notify_flags;
>  };
>  
> +#define IOMMU_NOTIFIER_FOREACH(n, mr) \
> +    QLIST_FOREACH((n), &(mr)->iommu_notify, node)
> +
>  /**
>   * MemoryListener: callbacks structure for updates to the physical memory map
>   *
> diff --git a/memory.c b/memory.c
> index 4900bbf..523c43f 100644
> --- a/memory.c
> +++ b/memory.c
> @@ -1587,7 +1587,7 @@ static void memory_region_update_iommu_notify_flags(MemoryRegion *mr)
>      IOMMUNotifierFlag flags = IOMMU_NOTIFIER_NONE;
>      IOMMUNotifier *iommu_notifier;
>  
> -    QLIST_FOREACH(iommu_notifier, &mr->iommu_notify, node) {
> +    IOMMU_NOTIFIER_FOREACH(iommu_notifier, mr) {
>          flags |= iommu_notifier->notifier_flags;
>      }
>  
> @@ -1671,7 +1671,7 @@ void memory_region_notify_iommu(MemoryRegion *mr,
>          request_flags = IOMMU_NOTIFIER_UNMAP;
>      }
>  
> -    QLIST_FOREACH(iommu_notifier, &mr->iommu_notify, node) {
> +    IOMMU_NOTIFIER_FOREACH(iommu_notifier, mr) {
>          /*
>           * Skip the notification if the notification does not overlap
>           * with registered range.
diff mbox

Patch

diff --git a/include/exec/memory.h b/include/exec/memory.h
index 805a88a..f76e174 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -239,6 +239,9 @@  struct MemoryRegion {
     IOMMUNotifierFlag iommu_notify_flags;
 };
 
+#define IOMMU_NOTIFIER_FOREACH(n, mr) \
+    QLIST_FOREACH((n), &(mr)->iommu_notify, node)
+
 /**
  * MemoryListener: callbacks structure for updates to the physical memory map
  *
diff --git a/memory.c b/memory.c
index 4900bbf..523c43f 100644
--- a/memory.c
+++ b/memory.c
@@ -1587,7 +1587,7 @@  static void memory_region_update_iommu_notify_flags(MemoryRegion *mr)
     IOMMUNotifierFlag flags = IOMMU_NOTIFIER_NONE;
     IOMMUNotifier *iommu_notifier;
 
-    QLIST_FOREACH(iommu_notifier, &mr->iommu_notify, node) {
+    IOMMU_NOTIFIER_FOREACH(iommu_notifier, mr) {
         flags |= iommu_notifier->notifier_flags;
     }
 
@@ -1671,7 +1671,7 @@  void memory_region_notify_iommu(MemoryRegion *mr,
         request_flags = IOMMU_NOTIFIER_UNMAP;
     }
 
-    QLIST_FOREACH(iommu_notifier, &mr->iommu_notify, node) {
+    IOMMU_NOTIFIER_FOREACH(iommu_notifier, mr) {
         /*
          * Skip the notification if the notification does not overlap
          * with registered range.