|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 4/4] xen: arm: include public/xen.h in foreign interface checking
mkheader.py doesn't cope with
structr foo { };
so add a newline.
Define unsigned long and long to a non-existent type on ARM so as to catch
their use.
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Cc: Jan Beulich <JBeulich@xxxxxxxx>
Cc: Keir (Xen.org) <keir@xxxxxxx>
Cc: Tim Deegan <tim@xxxxxxx>
Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
tools/include/xen-foreign/Makefile | 2 +-
tools/include/xen-foreign/mkheader.py | 4 ++--
tools/include/xen-foreign/reference.size | 10 +++++-----
xen/include/public/arch-arm.h | 8 +++++---
4 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/tools/include/xen-foreign/Makefile
b/tools/include/xen-foreign/Makefile
index 5bc2d46..53cc6b4 100644
--- a/tools/include/xen-foreign/Makefile
+++ b/tools/include/xen-foreign/Makefile
@@ -22,7 +22,7 @@ check-headers: checker
diff -u reference.size tmp.size
rm tmp.size
-arm32.h: mkheader.py structs.py $(ROOT)/arch-arm.h
+arm32.h: mkheader.py structs.py $(ROOT)/arch-arm.h $(ROOT)/xen.h
$(PYTHON) $< $* $@ $(filter %.h,$^)
x86_32.h: mkheader.py structs.py $(ROOT)/arch-x86/xen-x86_32.h
$(ROOT)/arch-x86/xen.h $(ROOT)/xen.h
diff --git a/tools/include/xen-foreign/mkheader.py
b/tools/include/xen-foreign/mkheader.py
index 685ab8e..1a0d76f 100644
--- a/tools/include/xen-foreign/mkheader.py
+++ b/tools/include/xen-foreign/mkheader.py
@@ -18,8 +18,8 @@ footer = {};
#arm
inttypes["arm32"] = {
- "unsigned long" : "uint32_t",
- "long" : "uint32_t",
+ "unsigned long" : "__danger_unsigned_long_on_arm32",
+ "long" : "__danger_long_on_arm32",
"xen_pfn_t" : "uint64_t",
"xen_ulong_t" : "uint64_t",
};
diff --git a/tools/include/xen-foreign/reference.size
b/tools/include/xen-foreign/reference.size
index 9f1bfac..0e5529d 100644
--- a/tools/include/xen-foreign/reference.size
+++ b/tools/include/xen-foreign/reference.size
@@ -5,9 +5,9 @@ start_info | - 1112 1168
trap_info | - 8 16
cpu_user_regs | 160 68 200
vcpu_guest_context | 180 2800 5168
-arch_vcpu_info | - 24 16
-vcpu_time_info | - 32 32
-vcpu_info | - 64 64
-arch_shared_info | - 268 280
-shared_info | - 2584 3368
+arch_vcpu_info | 0 24 16
+vcpu_time_info | 32 32 32
+vcpu_info | 48 64 64
+arch_shared_info | 0 268 280
+shared_info | 1088 2584 3368
diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index d8788f2..8dd9062 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -159,14 +159,16 @@ struct vcpu_guest_context {
typedef struct vcpu_guest_context vcpu_guest_context_t;
DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
-struct arch_vcpu_info { };
+struct arch_vcpu_info {
+};
typedef struct arch_vcpu_info arch_vcpu_info_t;
-struct arch_shared_info { };
+struct arch_shared_info {
+};
typedef struct arch_shared_info arch_shared_info_t;
typedef uint64_t xen_callback_t;
-#endif /* ifndef __ASSEMBLY __ */
+#endif
/* PSR bits (CPSR, SPSR)*/
--
1.7.2.5
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |