ARMv8: adding kernel stack limit to the coredata structure
authorReto Achermann <reto.achermann@inf.ethz.ch>
Thu, 16 Mar 2017 12:19:51 +0000 (13:19 +0100)
committerReto Achermann <reto.achermann@inf.ethz.ch>
Thu, 16 Mar 2017 12:19:51 +0000 (13:19 +0100)
Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>

include/target/aarch64/barrelfish_kpi/arm_core_data.h

index c383935..d3d27ff 100644 (file)
@@ -50,6 +50,11 @@ struct armv8_core_data {
     genpaddr_t cpu_driver_stack;
 
     /**
+     * Physical address of the kernel stack
+     */
+    genpaddr_t cpu_driver_stack_limit;
+
+    /**
      * Physical address of the global data structure shared by all
      */
     genpaddr_t cpu_driver_globals_pointer;
@@ -107,6 +112,13 @@ struct armv8_core_data {
 
 };
 
+#include <barrelfish_kpi/paging_arch.h>
+
+STATIC_ASSERT(sizeof(struct armv8_core_data) < BASE_PAGE_SIZE,
+        "Core Data structure must not exceed page size");
+
+
+
 #define ARMV8_CORE_DATA_PAGES 700