diff options
| author | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2012-08-22 12:20:14 -0400 |
|---|---|---|
| committer | Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> | 2012-08-23 10:18:17 -0400 |
| commit | bd3f79b71de0410352ab506496a467fcb0620912 (patch) | |
| tree | 329d52717cb1b04702af154db05eb766c04473cc /include/xen/interface | |
| parent | a8636c0b2e57d4f31f71aa306b1ee701db3f3c85 (diff) | |
xen: Introduce xen_pfn_t for pfn and mfn types
All the original Xen headers have xen_pfn_t as mfn and pfn type, however
when they have been imported in Linux, xen_pfn_t has been replaced with
unsigned long. That might work for x86 and ia64 but it does not for arm.
Bring back xen_pfn_t and let each architecture define xen_pfn_t as they
see fit.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'include/xen/interface')
| -rw-r--r-- | include/xen/interface/grant_table.h | 4 | ||||
| -rw-r--r-- | include/xen/interface/memory.h | 6 | ||||
| -rw-r--r-- | include/xen/interface/platform.h | 4 | ||||
| -rw-r--r-- | include/xen/interface/xen.h | 6 |
4 files changed, 10 insertions, 10 deletions
diff --git a/include/xen/interface/grant_table.h b/include/xen/interface/grant_table.h index a17d84433e6..7da811bdd55 100644 --- a/include/xen/interface/grant_table.h +++ b/include/xen/interface/grant_table.h | |||
| @@ -338,7 +338,7 @@ DEFINE_GUEST_HANDLE_STRUCT(gnttab_dump_table); | |||
| 338 | #define GNTTABOP_transfer 4 | 338 | #define GNTTABOP_transfer 4 |
| 339 | struct gnttab_transfer { | 339 | struct gnttab_transfer { |
| 340 | /* IN parameters. */ | 340 | /* IN parameters. */ |
| 341 | unsigned long mfn; | 341 | xen_pfn_t mfn; |
| 342 | domid_t domid; | 342 | domid_t domid; |
| 343 | grant_ref_t ref; | 343 | grant_ref_t ref; |
| 344 | /* OUT parameters. */ | 344 | /* OUT parameters. */ |
| @@ -375,7 +375,7 @@ struct gnttab_copy { | |||
| 375 | struct { | 375 | struct { |
| 376 | union { | 376 | union { |
| 377 | grant_ref_t ref; | 377 | grant_ref_t ref; |
| 378 | unsigned long gmfn; | 378 | xen_pfn_t gmfn; |
| 379 | } u; | 379 | } u; |
| 380 | domid_t domid; | 380 | domid_t domid; |
| 381 | uint16_t offset; | 381 | uint16_t offset; |
diff --git a/include/xen/interface/memory.h b/include/xen/interface/memory.h index 8d4efc1cc64..d8e33a93ea4 100644 --- a/include/xen/interface/memory.h +++ b/include/xen/interface/memory.h | |||
| @@ -31,7 +31,7 @@ struct xen_memory_reservation { | |||
| 31 | * OUT: GMFN bases of extents that were allocated | 31 | * OUT: GMFN bases of extents that were allocated |
| 32 | * (NB. This command also updates the mach_to_phys translation table) | 32 | * (NB. This command also updates the mach_to_phys translation table) |
| 33 | */ | 33 | */ |
| 34 | GUEST_HANDLE(ulong) extent_start; | 34 | GUEST_HANDLE(xen_pfn_t) extent_start; |
| 35 | 35 | ||
| 36 | /* Number of extents, and size/alignment of each (2^extent_order pages). */ | 36 | /* Number of extents, and size/alignment of each (2^extent_order pages). */ |
| 37 | unsigned long nr_extents; | 37 | unsigned long nr_extents; |
| @@ -130,7 +130,7 @@ struct xen_machphys_mfn_list { | |||
| 130 | * any large discontiguities in the machine address space, 2MB gaps in | 130 | * any large discontiguities in the machine address space, 2MB gaps in |
| 131 | * the machphys table will be represented by an MFN base of zero. | 131 | * the machphys table will be represented by an MFN base of zero. |
| 132 | */ | 132 | */ |
| 133 | GUEST_HANDLE(ulong) extent_start; | 133 | GUEST_HANDLE(xen_pfn_t) extent_start; |
| 134 | 134 | ||
| 135 | /* | 135 | /* |
| 136 | * Number of extents written to the above array. This will be smaller | 136 | * Number of extents written to the above array. This will be smaller |
| @@ -175,7 +175,7 @@ struct xen_add_to_physmap { | |||
| 175 | unsigned long idx; | 175 | unsigned long idx; |
| 176 | 176 | ||
| 177 | /* GPFN where the source mapping page should appear. */ | 177 | /* GPFN where the source mapping page should appear. */ |
| 178 | unsigned long gpfn; | 178 | xen_pfn_t gpfn; |
| 179 | }; | 179 | }; |
| 180 | DEFINE_GUEST_HANDLE_STRUCT(xen_add_to_physmap); | 180 | DEFINE_GUEST_HANDLE_STRUCT(xen_add_to_physmap); |
| 181 | 181 | ||
diff --git a/include/xen/interface/platform.h b/include/xen/interface/platform.h index 486653f0dd8..0bea47027fa 100644 --- a/include/xen/interface/platform.h +++ b/include/xen/interface/platform.h | |||
| @@ -54,7 +54,7 @@ DEFINE_GUEST_HANDLE_STRUCT(xenpf_settime_t); | |||
| 54 | #define XENPF_add_memtype 31 | 54 | #define XENPF_add_memtype 31 |
| 55 | struct xenpf_add_memtype { | 55 | struct xenpf_add_memtype { |
| 56 | /* IN variables. */ | 56 | /* IN variables. */ |
| 57 | unsigned long mfn; | 57 | xen_pfn_t mfn; |
| 58 | uint64_t nr_mfns; | 58 | uint64_t nr_mfns; |
| 59 | uint32_t type; | 59 | uint32_t type; |
| 60 | /* OUT variables. */ | 60 | /* OUT variables. */ |
| @@ -84,7 +84,7 @@ struct xenpf_read_memtype { | |||
| 84 | /* IN variables. */ | 84 | /* IN variables. */ |
| 85 | uint32_t reg; | 85 | uint32_t reg; |
| 86 | /* OUT variables. */ | 86 | /* OUT variables. */ |
| 87 | unsigned long mfn; | 87 | xen_pfn_t mfn; |
| 88 | uint64_t nr_mfns; | 88 | uint64_t nr_mfns; |
| 89 | uint32_t type; | 89 | uint32_t type; |
| 90 | }; | 90 | }; |
diff --git a/include/xen/interface/xen.h b/include/xen/interface/xen.h index 3871e475368..42834a36d34 100644 --- a/include/xen/interface/xen.h +++ b/include/xen/interface/xen.h | |||
| @@ -188,7 +188,7 @@ struct mmuext_op { | |||
| 188 | unsigned int cmd; | 188 | unsigned int cmd; |
| 189 | union { | 189 | union { |
| 190 | /* [UN]PIN_TABLE, NEW_BASEPTR, NEW_USER_BASEPTR */ | 190 | /* [UN]PIN_TABLE, NEW_BASEPTR, NEW_USER_BASEPTR */ |
| 191 | unsigned long mfn; | 191 | xen_pfn_t mfn; |
| 192 | /* INVLPG_LOCAL, INVLPG_ALL, SET_LDT */ | 192 | /* INVLPG_LOCAL, INVLPG_ALL, SET_LDT */ |
| 193 | unsigned long linear_addr; | 193 | unsigned long linear_addr; |
| 194 | } arg1; | 194 | } arg1; |
| @@ -428,11 +428,11 @@ struct start_info { | |||
| 428 | unsigned long nr_pages; /* Total pages allocated to this domain. */ | 428 | unsigned long nr_pages; /* Total pages allocated to this domain. */ |
| 429 | unsigned long shared_info; /* MACHINE address of shared info struct. */ | 429 | unsigned long shared_info; /* MACHINE address of shared info struct. */ |
| 430 | uint32_t flags; /* SIF_xxx flags. */ | 430 | uint32_t flags; /* SIF_xxx flags. */ |
| 431 | unsigned long store_mfn; /* MACHINE page number of shared page. */ | 431 | xen_pfn_t store_mfn; /* MACHINE page number of shared page. */ |
| 432 | uint32_t store_evtchn; /* Event channel for store communication. */ | 432 | uint32_t store_evtchn; /* Event channel for store communication. */ |
| 433 | union { | 433 | union { |
| 434 | struct { | 434 | struct { |
| 435 | unsigned long mfn; /* MACHINE page number of console page. */ | 435 | xen_pfn_t mfn; /* MACHINE page number of console page. */ |
| 436 | uint32_t evtchn; /* Event channel for console page. */ | 436 | uint32_t evtchn; /* Event channel for console page. */ |
| 437 | } domU; | 437 | } domU; |
| 438 | struct { | 438 | struct { |
