xen: remove XEN_GUEST_HANDLE(ulong)
authorIan Campbell <ian.campbell@citrix.com>
Wed, 17 Oct 2012 15:43:54 +0000 (16:43 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Wed, 17 Oct 2012 15:43:54 +0000 (16:43 +0100)
Having both this handle (always unsigned long) and
XEN_GUEST_HANDLE(xen_ulong_t) (unsigned long on x86 and explicit size
of ARM) is confusing and error prone.

Replace the two remaining uses of the ulong handle, in grant set and
x86 set_gdt hypercalls, with xen_ulong_t.

This correctly sizes the grant frame entry as 64 bit on ARM but
leaves it as unsigned long on x86 (therefore no intended change on
x86). Likewise in set_gdt there is no actual change.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
xen/arch/x86/mm.c
xen/common/grant_table.c
xen/include/asm-x86/hypercall.h
xen/include/public/grant_table.h
xen/include/public/xen.h

index 191f5ea4537be1945f0b3e5ee06a364a34ade072..fad3d33d03d28e9850c99b7b4dca59b256201e0c 100644 (file)
@@ -4100,7 +4100,8 @@ long set_gdt(struct vcpu *v,
 }
 
 
-long do_set_gdt(XEN_GUEST_HANDLE_PARAM(ulong) frame_list, unsigned int entries)
+long do_set_gdt(XEN_GUEST_HANDLE_PARAM(xen_ulong_t) frame_list,
+                unsigned int entries)
 {
     int nr_pages = (entries + 511) / 512;
     unsigned long frames[16];
index f4ae9ee3a38da13cf667d4c950a2914bf3a3066b..79127694ac5008eaf47669d5c8fb7f92075159c0 100644 (file)
@@ -1322,7 +1322,7 @@ gnttab_setup_table(
     struct domain *d;
     struct grant_table *gt;
     int            i;
-    unsigned long  gmfn;
+    xen_pfn_t  gmfn;
 
     if ( count != 1 )
         return -EINVAL;
index bd14220506ca23905cc4d059b98a51d9635180c6..afa8ba9880c957a83fa24bc0b181e56196419498 100644 (file)
@@ -33,7 +33,7 @@ do_mmu_update(
 
 extern long
 do_set_gdt(
-    XEN_GUEST_HANDLE_PARAM(ulong) frame_list,
+    XEN_GUEST_HANDLE_PARAM(xen_ulong_t) frame_list,
     unsigned int entries);
 
 extern long
index 28d9476266144c2f9328ff402e3be6aebfc68688..13cc559447488d62e4f81e422a9c7ef15f20a7ed 100644 (file)
@@ -385,7 +385,7 @@ struct gnttab_setup_table {
     uint32_t nr_frames;
     /* OUT parameters. */
     int16_t  status;              /* => enum grant_status */
-    XEN_GUEST_HANDLE(ulong) frame_list;
+    XEN_GUEST_HANDLE(xen_pfn_t) frame_list;
 };
 typedef struct gnttab_setup_table gnttab_setup_table_t;
 DEFINE_XEN_GUEST_HANDLE(gnttab_setup_table_t);
index e42d01fa6e17239ef58787f50ad4074a3fca9fd0..9a5b394f03b21de439d0f8fe93d2095c2036c234 100644 (file)
@@ -43,8 +43,6 @@ DEFINE_XEN_GUEST_HANDLE(char);
 __DEFINE_XEN_GUEST_HANDLE(uchar, unsigned char);
 DEFINE_XEN_GUEST_HANDLE(int);
 __DEFINE_XEN_GUEST_HANDLE(uint,  unsigned int);
-DEFINE_XEN_GUEST_HANDLE(long);
-__DEFINE_XEN_GUEST_HANDLE(ulong, unsigned long);
 DEFINE_XEN_GUEST_HANDLE(void);
 
 DEFINE_XEN_GUEST_HANDLE(uint64_t);