aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/svm/svm_common.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/svm/svm_common.h b/src/svm/svm_common.h
index a7160286a44..58cd0e94f5c 100644
--- a/src/svm/svm_common.h
+++ b/src/svm/svm_common.h
@@ -83,9 +83,15 @@ typedef struct svm_map_region_args_
* Base should be "out of the way," and size should be big enough to
* cover everything we plan to put here.
*/
-#define SVM_GLOBAL_REGION_BASEVA 0x30000000
#define SVM_GLOBAL_REGION_SIZE (64<<20)
#define SVM_GLOBAL_REGION_NAME "/global_vm"
+#if defined (__aarch64__)
+#define VA_BITS 48
+#define BASEVA ((1ul << VA_BITS) / 4)
+#define SVM_GLOBAL_REGION_BASEVA (BASEVA - (2 * SVM_GLOBAL_REGION_SIZE))
+#else
+#define SVM_GLOBAL_REGION_BASEVA 0x30000000
+#endif
/*
* Memory shared across individual router instances.