diff mbox

xen: Have __DEFINE_COMPAT_HANDLE() generate const versions

Message ID 1472824034-29713-1-git-send-email-rcojocaru@bitdefender.com (mailing list archive)
State New, archived
Headers show

Commit Message

Razvan Cojocaru Sept. 2, 2016, 1:47 p.m. UTC
Both DEFINE_XEN_GUEST_HANDLE() and __DEFINE_XEN_GUEST_HANDLE()
each produce both const and non-const handles,
only DEFINE_COMPAT_HANDLE() does (__DEFINE_COMPAT_HANDLE()
does not). This patch has __DEFINE_COMPAT_HANDLE() also
produce a const handle.

Suggested-by: Jan Beulich <JBeulich@suse.com>
Signed-off-by: Razvan Cojocaru <rcojocaru@bitdefender.com>
---
 xen/include/xen/compat.h | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
diff mbox

Patch

diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
index 3f4cef6..ce913ac 100644
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -15,11 +15,14 @@ 
     typedef struct { \
         compat_ptr_t c; \
         type *_[0] __packed; \
-    } __compat_handle_ ## name
+    } __compat_handle_ ## name; \
+    typedef struct { \
+        compat_ptr_t c; \
+        const type *_[0] __packed; \
+    } __compat_handle_const_ ## name
 
 #define DEFINE_COMPAT_HANDLE(name) \
-    __DEFINE_COMPAT_HANDLE(name, name); \
-    __DEFINE_COMPAT_HANDLE(const_ ## name, const name)
+    __DEFINE_COMPAT_HANDLE(name, name)
 #define COMPAT_HANDLE(name)          __compat_handle_ ## name
 
 /* NB: it is assumed that if an arch uses the compat layer it does not