All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@arm.com>
To: xen-devel@lists.xenproject.org
Cc: "Stefano Stabellini" <sstabellini@kernel.org>,
	"Wei Liu" <wei.liu2@citrix.com>,
	"Konrad Rzeszutek Wilk" <konrad.wilk@oracle.com>,
	"George Dunlap" <George.Dunlap@eu.citrix.com>,
	"Andrew Cooper" <andrew.cooper3@citrix.com>,
	"Ian Jackson" <ian.jackson@eu.citrix.com>,
	"Tim Deegan" <tim@xen.org>, "Julien Grall" <julien.grall@arm.com>,
	"Jan Beulich" <jbeulich@suse.com>,
	"Roger Pau Monné" <roger.pau@citrix.com>
Subject: [PATCH 05/14] xen/grant-table: Make arch specific macros typesafe
Date: Tue,  7 May 2019 16:14:49 +0100	[thread overview]
Message-ID: <20190507151458.29350-6-julien.grall@arm.com> (raw)
In-Reply-To: <20190507151458.29350-1-julien.grall@arm.com>

This patch rework all the arch specific macros in grant_table.h to use
the typesafe MFN/GFN.

At the same time, some functions are renamed s/gmfn/gfn/ to match the
current naming scheme (see include/mm.h).

No functional changes intended.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Acked-by: Jan Beulich <jbeulich@suse.com>

---
    Changes in v2:
        - Update commit message to explain the changes made
        - Fix indentation
        - Adapt the code to match the new prototype of mfn_to_gfn
        - Add Jan's acked-by for non-ARM parts
---
 xen/common/grant_table.c          |  4 ++--
 xen/include/asm-arm/grant_table.h | 12 ++++++------
 xen/include/asm-x86/grant_table.h | 19 +++++++------------
 3 files changed, 15 insertions(+), 20 deletions(-)

diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c
index 80728ea57d..abc966f775 100644
--- a/xen/common/grant_table.c
+++ b/xen/common/grant_table.c
@@ -1935,7 +1935,7 @@ gnttab_setup_table(
     op.status = GNTST_okay;
     for ( i = 0; i < op.nr_frames; i++ )
     {
-        xen_pfn_t gmfn = gnttab_shared_gmfn(d, gt, i);
+        xen_pfn_t gmfn = gfn_x(gnttab_shared_gfn(d, gt, i));
 
         /* Grant tables cannot be shared */
         BUG_ON(SHARED_M2P(gmfn));
@@ -3149,7 +3149,7 @@ gnttab_get_status_frames(XEN_GUEST_HANDLE_PARAM(gnttab_get_status_frames_t) uop,
 
     for ( i = 0; i < op.nr_frames; i++ )
     {
-        gmfn = gnttab_status_gmfn(d, gt, i);
+        gmfn = gfn_x(gnttab_status_gfn(d, gt, i));
         if ( copy_to_guest_offset(op.frame_list, i, &gmfn, 1) )
             op.status = GNTST_bad_virt_addr;
     }
diff --git a/xen/include/asm-arm/grant_table.h b/xen/include/asm-arm/grant_table.h
index 051db1362b..750536184e 100644
--- a/xen/include/asm-arm/grant_table.h
+++ b/xen/include/asm-arm/grant_table.h
@@ -65,15 +65,15 @@ void gnttab_mark_dirty(struct domain *d, mfn_t mfn);
     } while ( 0 )
 
 #define gnttab_get_frame_gfn(gt, st, idx) ({                             \
-   _gfn((st) ? gnttab_status_gmfn(NULL, gt, idx)                         \
-             : gnttab_shared_gmfn(NULL, gt, idx));                       \
+   (st) ? gnttab_status_gfn(NULL, gt, idx)                               \
+        : gnttab_shared_gfn(NULL, gt, idx);                              \
 })
 
-#define gnttab_shared_gmfn(d, t, i)                                      \
-    gfn_x(((i) >= nr_grant_frames(t)) ? INVALID_GFN : (t)->arch.shared_gfn[i])
+#define gnttab_shared_gfn(d, t, i)                                       \
+    (((i) >= nr_grant_frames(t)) ? INVALID_GFN : (t)->arch.shared_gfn[i])
 
-#define gnttab_status_gmfn(d, t, i)                                      \
-    gfn_x(((i) >= nr_status_frames(t)) ? INVALID_GFN : (t)->arch.status_gfn[i])
+#define gnttab_status_gfn(d, t, i)                                       \
+    (((i) >= nr_status_frames(t)) ? INVALID_GFN : (t)->arch.status_gfn[i])
 
 #define gnttab_need_iommu_mapping(d)                    \
     (is_domain_direct_mapped(d) && need_iommu_pt_sync(d))
diff --git a/xen/include/asm-x86/grant_table.h b/xen/include/asm-x86/grant_table.h
index 8b604ed51f..661228dd39 100644
--- a/xen/include/asm-x86/grant_table.h
+++ b/xen/include/asm-x86/grant_table.h
@@ -39,24 +39,19 @@ static inline int replace_grant_host_mapping(uint64_t addr, mfn_t frame,
 #define gnttab_destroy_arch(gt) do {} while ( 0 )
 #define gnttab_set_frame_gfn(gt, st, idx, gfn) do {} while ( 0 )
 #define gnttab_get_frame_gfn(gt, st, idx) ({                             \
-    unsigned long mfn_ = (st) ? gnttab_status_mfn(gt, idx)               \
-                              : gnttab_shared_mfn(gt, idx);              \
-    unsigned long gpfn_ = get_gpfn_from_mfn(mfn_);                       \
+    mfn_t mfn_ = (st) ? gnttab_status_mfn(gt, idx)                       \
+                      : gnttab_shared_mfn(gt, idx);                      \
+    unsigned long gpfn_ = get_gpfn_from_mfn(mfn_x(mfn_));                \
     VALID_M2P(gpfn_) ? _gfn(gpfn_) : INVALID_GFN;                        \
 })
 
-#define gnttab_shared_mfn(t, i)                         \
-    ((virt_to_maddr((t)->shared_raw[i]) >> PAGE_SHIFT))
+#define gnttab_shared_mfn(t, i) _mfn(__virt_to_mfn((t)->shared_raw[i]))
 
-#define gnttab_shared_gmfn(d, t, i)                     \
-    (mfn_to_gmfn(d, gnttab_shared_mfn(t, i)))
+#define gnttab_shared_gfn(d, t, i) mfn_to_gfn(d, gnttab_shared_mfn(t, i))
 
+#define gnttab_status_mfn(t, i) _mfn(__virt_to_mfn((t)->status[i]))
 
-#define gnttab_status_mfn(t, i)                         \
-    ((virt_to_maddr((t)->status[i]) >> PAGE_SHIFT))
-
-#define gnttab_status_gmfn(d, t, i)                     \
-    (mfn_to_gmfn(d, gnttab_status_mfn(t, i)))
+#define gnttab_status_gfn(d, t, i) mfn_to_gfn(d, gnttab_status_mfn(t, i))
 
 #define gnttab_mark_dirty(d, f) paging_mark_dirty(d, f)
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

WARNING: multiple messages have this Message-ID (diff)
From: Julien Grall <julien.grall@arm.com>
To: xen-devel@lists.xenproject.org
Cc: "Stefano Stabellini" <sstabellini@kernel.org>,
	"Wei Liu" <wei.liu2@citrix.com>,
	"Konrad Rzeszutek Wilk" <konrad.wilk@oracle.com>,
	"George Dunlap" <George.Dunlap@eu.citrix.com>,
	"Andrew Cooper" <andrew.cooper3@citrix.com>,
	"Ian Jackson" <ian.jackson@eu.citrix.com>,
	"Tim Deegan" <tim@xen.org>, "Julien Grall" <julien.grall@arm.com>,
	"Jan Beulich" <jbeulich@suse.com>,
	"Roger Pau Monné" <roger.pau@citrix.com>
Subject: [Xen-devel] [PATCH 05/14] xen/grant-table: Make arch specific macros typesafe
Date: Tue,  7 May 2019 16:14:49 +0100	[thread overview]
Message-ID: <20190507151458.29350-6-julien.grall@arm.com> (raw)
Message-ID: <20190507151449.-M3VMlYCrwVVW_-ttxFfQRls5RYsdi502eRDSNgu5TE@z> (raw)
In-Reply-To: <20190507151458.29350-1-julien.grall@arm.com>

This patch rework all the arch specific macros in grant_table.h to use
the typesafe MFN/GFN.

At the same time, some functions are renamed s/gmfn/gfn/ to match the
current naming scheme (see include/mm.h).

No functional changes intended.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Acked-by: Jan Beulich <jbeulich@suse.com>

---
    Changes in v2:
        - Update commit message to explain the changes made
        - Fix indentation
        - Adapt the code to match the new prototype of mfn_to_gfn
        - Add Jan's acked-by for non-ARM parts
---
 xen/common/grant_table.c          |  4 ++--
 xen/include/asm-arm/grant_table.h | 12 ++++++------
 xen/include/asm-x86/grant_table.h | 19 +++++++------------
 3 files changed, 15 insertions(+), 20 deletions(-)

diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c
index 80728ea57d..abc966f775 100644
--- a/xen/common/grant_table.c
+++ b/xen/common/grant_table.c
@@ -1935,7 +1935,7 @@ gnttab_setup_table(
     op.status = GNTST_okay;
     for ( i = 0; i < op.nr_frames; i++ )
     {
-        xen_pfn_t gmfn = gnttab_shared_gmfn(d, gt, i);
+        xen_pfn_t gmfn = gfn_x(gnttab_shared_gfn(d, gt, i));
 
         /* Grant tables cannot be shared */
         BUG_ON(SHARED_M2P(gmfn));
@@ -3149,7 +3149,7 @@ gnttab_get_status_frames(XEN_GUEST_HANDLE_PARAM(gnttab_get_status_frames_t) uop,
 
     for ( i = 0; i < op.nr_frames; i++ )
     {
-        gmfn = gnttab_status_gmfn(d, gt, i);
+        gmfn = gfn_x(gnttab_status_gfn(d, gt, i));
         if ( copy_to_guest_offset(op.frame_list, i, &gmfn, 1) )
             op.status = GNTST_bad_virt_addr;
     }
diff --git a/xen/include/asm-arm/grant_table.h b/xen/include/asm-arm/grant_table.h
index 051db1362b..750536184e 100644
--- a/xen/include/asm-arm/grant_table.h
+++ b/xen/include/asm-arm/grant_table.h
@@ -65,15 +65,15 @@ void gnttab_mark_dirty(struct domain *d, mfn_t mfn);
     } while ( 0 )
 
 #define gnttab_get_frame_gfn(gt, st, idx) ({                             \
-   _gfn((st) ? gnttab_status_gmfn(NULL, gt, idx)                         \
-             : gnttab_shared_gmfn(NULL, gt, idx));                       \
+   (st) ? gnttab_status_gfn(NULL, gt, idx)                               \
+        : gnttab_shared_gfn(NULL, gt, idx);                              \
 })
 
-#define gnttab_shared_gmfn(d, t, i)                                      \
-    gfn_x(((i) >= nr_grant_frames(t)) ? INVALID_GFN : (t)->arch.shared_gfn[i])
+#define gnttab_shared_gfn(d, t, i)                                       \
+    (((i) >= nr_grant_frames(t)) ? INVALID_GFN : (t)->arch.shared_gfn[i])
 
-#define gnttab_status_gmfn(d, t, i)                                      \
-    gfn_x(((i) >= nr_status_frames(t)) ? INVALID_GFN : (t)->arch.status_gfn[i])
+#define gnttab_status_gfn(d, t, i)                                       \
+    (((i) >= nr_status_frames(t)) ? INVALID_GFN : (t)->arch.status_gfn[i])
 
 #define gnttab_need_iommu_mapping(d)                    \
     (is_domain_direct_mapped(d) && need_iommu_pt_sync(d))
diff --git a/xen/include/asm-x86/grant_table.h b/xen/include/asm-x86/grant_table.h
index 8b604ed51f..661228dd39 100644
--- a/xen/include/asm-x86/grant_table.h
+++ b/xen/include/asm-x86/grant_table.h
@@ -39,24 +39,19 @@ static inline int replace_grant_host_mapping(uint64_t addr, mfn_t frame,
 #define gnttab_destroy_arch(gt) do {} while ( 0 )
 #define gnttab_set_frame_gfn(gt, st, idx, gfn) do {} while ( 0 )
 #define gnttab_get_frame_gfn(gt, st, idx) ({                             \
-    unsigned long mfn_ = (st) ? gnttab_status_mfn(gt, idx)               \
-                              : gnttab_shared_mfn(gt, idx);              \
-    unsigned long gpfn_ = get_gpfn_from_mfn(mfn_);                       \
+    mfn_t mfn_ = (st) ? gnttab_status_mfn(gt, idx)                       \
+                      : gnttab_shared_mfn(gt, idx);                      \
+    unsigned long gpfn_ = get_gpfn_from_mfn(mfn_x(mfn_));                \
     VALID_M2P(gpfn_) ? _gfn(gpfn_) : INVALID_GFN;                        \
 })
 
-#define gnttab_shared_mfn(t, i)                         \
-    ((virt_to_maddr((t)->shared_raw[i]) >> PAGE_SHIFT))
+#define gnttab_shared_mfn(t, i) _mfn(__virt_to_mfn((t)->shared_raw[i]))
 
-#define gnttab_shared_gmfn(d, t, i)                     \
-    (mfn_to_gmfn(d, gnttab_shared_mfn(t, i)))
+#define gnttab_shared_gfn(d, t, i) mfn_to_gfn(d, gnttab_shared_mfn(t, i))
 
+#define gnttab_status_mfn(t, i) _mfn(__virt_to_mfn((t)->status[i]))
 
-#define gnttab_status_mfn(t, i)                         \
-    ((virt_to_maddr((t)->status[i]) >> PAGE_SHIFT))
-
-#define gnttab_status_gmfn(d, t, i)                     \
-    (mfn_to_gmfn(d, gnttab_status_mfn(t, i)))
+#define gnttab_status_gfn(d, t, i) mfn_to_gfn(d, gnttab_status_mfn(t, i))
 
 #define gnttab_mark_dirty(d, f) paging_mark_dirty(d, f)
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  parent reply	other threads:[~2019-05-07 15:15 UTC|newest]

Thread overview: 154+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-07 15:14 [PATCH 00/14] xen/arm: Properly disable M2P on Arm Julien Grall
2019-05-07 15:14 ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 01/14] xen/arm: Use mfn_to_pdx instead of pfn_to_pdx when possible Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-09 17:50   ` Stefano Stabellini
2019-05-09 17:50     ` [Xen-devel] " Stefano Stabellini
2019-05-07 15:14 ` [PATCH 02/14] xen/x86: Constify the parameter "d" in mfn_to_gfn Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 03/14] xen/x86: Make mfn_to_gfn typesafe Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-10 11:35   ` Jan Beulich
2019-05-10 11:35     ` [Xen-devel] " Jan Beulich
2019-05-10 13:02     ` Julien Grall
2019-05-10 13:02       ` [Xen-devel] " Julien Grall
2019-05-10 13:24       ` Jan Beulich
2019-05-10 13:24         ` [Xen-devel] " Jan Beulich
2019-05-10 13:25         ` Julien Grall
2019-05-10 13:25           ` [Xen-devel] " Julien Grall
2019-05-20 15:13           ` Julien Grall
2019-05-20 15:13             ` [Xen-devel] " Julien Grall
2019-05-28 17:29             ` George Dunlap
2019-05-28 17:29               ` [Xen-devel] " George Dunlap
2019-05-29 11:39               ` Julien Grall
2019-05-29 11:39                 ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 04/14] xen/x86: Use mfn_to_gfn rather than mfn_to_gmfn Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-10 12:15   ` Jan Beulich
2019-05-10 12:15     ` [Xen-devel] " Jan Beulich
2019-05-10 13:07     ` Julien Grall
2019-05-10 13:07       ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` Julien Grall [this message]
2019-05-07 15:14   ` [Xen-devel] [PATCH 05/14] xen/grant-table: Make arch specific macros typesafe Julien Grall
2019-05-09 17:54   ` Stefano Stabellini
2019-05-09 17:54     ` [Xen-devel] " Stefano Stabellini
2019-05-07 15:14 ` [PATCH 06/14] xen: Convert hotplug page function to use typesafe MFN Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-09 18:01   ` Stefano Stabellini
2019-05-09 18:01     ` [Xen-devel] " Stefano Stabellini
2019-05-09 18:10     ` Julien Grall
2019-05-09 18:10       ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 07/14] xen: Convert is_xen_fixed_mfn " Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-24 15:16   ` George Dunlap
2019-05-24 15:16     ` [Xen-devel] " George Dunlap
2019-05-07 15:14 ` [PATCH 08/14] xen: Convert is_xen_heap_mfn " Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-24 15:15   ` George Dunlap
2019-05-24 15:15     ` [Xen-devel] " George Dunlap
2019-05-07 15:14 ` [PATCH 09/14] xen: Introduce HAS_M2P config and use to protect mfn_to_gmfn call Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-09 18:06   ` Stefano Stabellini
2019-05-09 18:06     ` [Xen-devel] " Stefano Stabellini
2019-05-09 18:12     ` Julien Grall
2019-05-09 18:12       ` [Xen-devel] " Julien Grall
2019-05-09 18:16       ` Stefano Stabellini
2019-05-09 18:16         ` [Xen-devel] " Stefano Stabellini
2019-05-09 18:29         ` Julien Grall
2019-05-09 18:29           ` [Xen-devel] " Julien Grall
2019-05-09 19:49           ` Stefano Stabellini
2019-05-09 19:49             ` [Xen-devel] " Stefano Stabellini
2019-05-10 12:31   ` Jan Beulich
2019-05-10 12:31     ` [Xen-devel] " Jan Beulich
2019-05-10 13:22     ` Julien Grall
2019-05-10 13:22       ` [Xen-devel] " Julien Grall
2019-05-10 13:32       ` Jan Beulich
2019-05-10 13:32         ` [Xen-devel] " Jan Beulich
2019-05-10 13:41         ` Julien Grall
2019-05-10 13:41           ` [Xen-devel] " Julien Grall
2019-05-10 13:45           ` Jan Beulich
2019-05-10 13:45             ` [Xen-devel] " Jan Beulich
2019-05-10 14:04             ` Julien Grall
2019-05-10 14:04               ` [Xen-devel] " Julien Grall
2019-05-10 14:19               ` Jan Beulich
2019-05-10 14:19                 ` [Xen-devel] " Jan Beulich
2019-05-10 14:34                 ` Julien Grall
2019-05-10 14:34                   ` [Xen-devel] " Julien Grall
2019-05-22 16:03                   ` Julien Grall
2019-05-22 16:03                     ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 10/14] xen: Remove mfn_to_gmfn macro Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 11/14] xen/x86: mm: Re-implement set_gpfn_from_mfn() as a static inline function Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-10 12:43   ` Jan Beulich
2019-05-10 12:43     ` [Xen-devel] " Jan Beulich
2019-05-10 13:27     ` Julien Grall
2019-05-10 13:27       ` [Xen-devel] " Julien Grall
2019-05-10 13:35       ` Jan Beulich
2019-05-10 13:35         ` [Xen-devel] " Jan Beulich
2019-05-10 13:41         ` Julien Grall
2019-05-10 13:41           ` [Xen-devel] " Julien Grall
2019-05-10 13:48           ` Jan Beulich
2019-05-10 13:48             ` [Xen-devel] " Jan Beulich
2019-05-10 14:05             ` Julien Grall
2019-05-10 14:05               ` [Xen-devel] " Julien Grall
2019-05-10 14:21               ` Jan Beulich
2019-05-10 14:21                 ` [Xen-devel] " Jan Beulich
2019-05-10 14:48                 ` Julien Grall
2019-05-10 14:48                   ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 12/14] xen/x86: pv: Convert update_intpte() to use typesafe MFN Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-10 12:54   ` Jan Beulich
2019-05-10 12:54     ` [Xen-devel] " Jan Beulich
2019-05-10 13:28     ` Julien Grall
2019-05-10 13:28       ` [Xen-devel] " Julien Grall
2019-05-07 15:14 ` [PATCH 13/14] xen/mm: Convert {s, g}et_gpfn_from_mfn() " Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-07 20:27   ` Tamas K Lengyel
2019-05-07 20:27     ` [Xen-devel] " Tamas K Lengyel
2019-05-09 18:19   ` Stefano Stabellini
2019-05-09 18:19     ` [Xen-devel] " Stefano Stabellini
2019-05-10 13:21   ` Jan Beulich
2019-05-10 13:21     ` [Xen-devel] " Jan Beulich
2019-05-10 13:27     ` Andrew Cooper
2019-05-10 13:27       ` [Xen-devel] " Andrew Cooper
2019-05-10 13:34     ` Julien Grall
2019-05-10 13:34       ` [Xen-devel] " Julien Grall
2019-05-10 13:41       ` Jan Beulich
2019-05-10 13:41         ` [Xen-devel] " Jan Beulich
2019-05-10 13:46         ` Julien Grall
2019-05-10 13:46           ` [Xen-devel] " Julien Grall
2019-05-10 14:02           ` Jan Beulich
2019-05-10 14:02             ` [Xen-devel] " Jan Beulich
2019-05-10 14:05             ` Andrew Cooper
2019-05-10 14:05               ` [Xen-devel] " Andrew Cooper
2019-05-10 14:08               ` Julien Grall
2019-05-10 14:08                 ` [Xen-devel] " Julien Grall
2019-05-10 14:09                 ` Andrew Cooper
2019-05-10 14:09                   ` [Xen-devel] " Andrew Cooper
2019-05-10 14:14               ` Jan Beulich
2019-05-10 14:14                 ` [Xen-devel] " Jan Beulich
2019-05-10 14:27                 ` Andrew Cooper
2019-05-10 14:27                   ` [Xen-devel] " Andrew Cooper
2019-05-24 16:24     ` George Dunlap
2019-05-24 16:24       ` [Xen-devel] " George Dunlap
2019-05-29 16:27       ` Julien Grall
2019-05-29 16:27         ` [Xen-devel] " Julien Grall
2019-05-29 16:29         ` George Dunlap
2019-05-29 16:29           ` [Xen-devel] " George Dunlap
2019-05-24 16:35   ` George Dunlap
2019-05-24 16:35     ` [Xen-devel] " George Dunlap
2019-05-07 15:14 ` [PATCH 14/14] xen/mm: Provide dummy M2P-related helpers when !CONFIG_HAVE_M2P Julien Grall
2019-05-07 15:14   ` [Xen-devel] " Julien Grall
2019-05-09 18:20   ` Stefano Stabellini
2019-05-09 18:20     ` [Xen-devel] " Stefano Stabellini
2019-05-10 13:28   ` Jan Beulich
2019-05-10 13:28     ` [Xen-devel] " Jan Beulich
2019-05-10 13:29     ` Julien Grall
2019-05-10 13:29       ` [Xen-devel] " Julien Grall
2019-05-10 13:37       ` Jan Beulich
2019-05-10 13:37         ` [Xen-devel] " Jan Beulich
2019-05-10 13:38         ` Julien Grall
2019-05-10 13:38           ` [Xen-devel] " Julien Grall
2019-05-24 16:51   ` George Dunlap
2019-05-24 16:51     ` [Xen-devel] " George Dunlap

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190507151458.29350-6-julien.grall@arm.com \
    --to=julien.grall@arm.com \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=konrad.wilk@oracle.com \
    --cc=roger.pau@citrix.com \
    --cc=sstabellini@kernel.org \
    --cc=tim@xen.org \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.