[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [rfc] [patch] more 'long' in the hypervisor interface
Hi Keir, we've come across some more users of 'long' in the hypervisor interface: xen/include/public/memory.h. Unlike the dom0_ops, we can't just change these to be 64 bits because 32-bit kernels use these structures for the balloon driver. I would like to create a new type, say "legacy_ulong_t", to cover these cases and future instances we'll undoubtedly come across. What do you think? Signed-off-by: Hollis Blanchard <hollisb@xxxxxxxxxx> diff -r 10db0f8c710d xen/include/public/arch-x86_64.h --- a/xen/include/public/arch-x86_64.h Wed Jun 28 15:37:45 2006 -0400 +++ b/xen/include/public/arch-x86_64.h Wed Jun 28 16:02:21 2006 -0500 @@ -104,6 +104,8 @@ DEFINE_XEN_GUEST_HANDLE(xen_pfn_t); #define MAX_VIRT_CPUS 32 #ifndef __ASSEMBLY__ + +typedef unsigned long legacy_ulong_t; /* * int HYPERVISOR_set_segment_base(unsigned int which, unsigned long base) diff -r 10db0f8c710d xen/include/public/memory.h --- a/xen/include/public/memory.h Wed Jun 28 15:37:45 2006 -0400 +++ b/xen/include/public/memory.h Wed Jun 28 16:02:21 2006 -0500 @@ -32,7 +32,7 @@ struct xen_memory_reservation { XEN_GUEST_HANDLE(xen_pfn_t) extent_start; /* Number of extents, and size/alignment of each (2^extent_order pages). */ - unsigned long nr_extents; + legacy_ulong_t nr_extents; unsigned int extent_order; /* @@ -90,7 +90,7 @@ struct xen_memory_exchange { * command will be non-zero. * 5. THIS FIELD MUST BE INITIALISED TO ZERO BY THE CALLER! */ - unsigned long nr_exchanged; + legacy_ulong_t nr_exchanged; }; typedef struct xen_memory_exchange xen_memory_exchange_t; DEFINE_XEN_GUEST_HANDLE(xen_memory_exchange_t); @@ -148,8 +148,8 @@ DEFINE_XEN_GUEST_HANDLE(xen_machphys_mfn */ #define XENMEM_machphys_mapping 12 struct xen_machphys_mapping { - unsigned long v_start, v_end; /* Start and end virtual addresses. */ - unsigned long max_mfn; /* Maximum MFN that can be looked up. */ + legacy_ulong_t v_start, v_end; /* Start and end virtual addresses. */ + legacy_ulong_t max_mfn; /* Maximum MFN that can be looked up. */ }; typedef struct xen_machphys_mapping xen_machphys_mapping_t; DEFINE_XEN_GUEST_HANDLE(xen_machphys_mapping_t); @@ -170,7 +170,7 @@ struct xen_add_to_physmap { unsigned int space; /* Index into source mapping space. */ - unsigned long idx; + legacy_ulong_t idx; /* GPFN where the source mapping page should appear. */ xen_pfn_t gpfn; @@ -188,7 +188,7 @@ struct xen_translate_gpfn_list { domid_t domid; /* Length of list. */ - unsigned long nr_gpfns; + legacy_ulong_t nr_gpfns; /* List of GPFNs to translate. */ XEN_GUEST_HANDLE(xen_pfn_t) gpfn_list; -- Hollis Blanchard IBM Linux Technology Center _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |