diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2013-04-24 11:54:00 +0100 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2013-04-24 16:55:16 +0100 |
commit | 865aa5dbe739a36af7b543fbe332cb94fc57343b (patch) | |
tree | 72adccaa7d094d5d3959ac3bdc6cfab4b3f238ea | |
parent | 683425823cf8c610127dffeaa7cd44bc700e1ff4 (diff) | |
download | xen-865aa5dbe739a36af7b543fbe332cb94fc57343b.tar.gz xen-865aa5dbe739a36af7b543fbe332cb94fc57343b.tar.bz2 xen-865aa5dbe739a36af7b543fbe332cb94fc57343b.zip |
arm: add build time asserts for various virtual address aligment constraints
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
-rw-r--r-- | xen/arch/arm/mm.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 3cb852b457..656aa82b4b 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -74,6 +74,17 @@ unsigned long total_pages; extern char __init_begin[], __init_end[]; +/* Checking VA memory layout alignment. */ +static inline void check_memory_layout_alignment_constraints(void) { + /* 2MB aligned regions */ + BUILD_BUG_ON(XEN_VIRT_START & ~SECOND_MASK); + BUILD_BUG_ON(FIXMAP_ADDR(0) & ~SECOND_MASK); + BUILD_BUG_ON(BOOT_MISC_VIRT_START & ~SECOND_MASK); + /* 1GB aligned regions */ + BUILD_BUG_ON(XENHEAP_VIRT_START & ~FIRST_MASK); + BUILD_BUG_ON(DOMHEAP_VIRT_START & ~FIRST_MASK); +} + void dump_pt_walk(lpae_t *first, paddr_t addr) { lpae_t *second = NULL, *third = NULL; |