[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCH v2] plat: Configure stack size page order



Hey Costin,

what about plat/xen/x86/arch_events.c and plat/xen/x86/traps.c? I though you wanted to fix them with this patch, too. At least in your commit message you should mention that Arm32 Xen is not adopted by this patch.

Thanks a lot,

Simon

On 08.09.19 09:01, Costin Lupu wrote:
This patch adds a config option for configuring the stack size page order. We
need this for supporting large stacks.

Signed-off-by: Costin Lupu <costin.lupu@xxxxxxxxx>
---
  arch/Config.uk                          | 9 +++++++++
  arch/arm/arm/include/uk/asm/limits.h    | 2 +-
  arch/arm/arm64/include/uk/asm/limits.h  | 2 +-
  arch/x86/x86_64/include/uk/asm/limits.h | 2 +-
  4 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/arch/Config.uk b/arch/Config.uk
index 190c75e6..d091dcbd 100644
--- a/arch/Config.uk
+++ b/arch/Config.uk
@@ -24,3 +24,12 @@ endif
  if (ARCH_ARM_64)
        source "arch/arm/arm64/Config.uk"
  endif
+
+config STACK_SIZE_PAGE_ORDER
+       int
+       prompt "Stack size page order"
+       default 4
+       help
+               Indirectly configures the stack size by changing the stack size 
page
+               order. Stack size is equal with 2^order * page size (e.g. 4KB).
+               Only change this if you know what you're doing.
diff --git a/arch/arm/arm/include/uk/asm/limits.h 
b/arch/arm/arm/include/uk/asm/limits.h
index 085761c3..e2298d6b 100644
--- a/arch/arm/arm/include/uk/asm/limits.h
+++ b/arch/arm/arm/include/uk/asm/limits.h
@@ -39,7 +39,7 @@
  #define __PAGE_MASK           (~((__PAGE_SIZE) - 1))
  #endif
-#define __STACK_SIZE_PAGE_ORDER 2
+#define __STACK_SIZE_PAGE_ORDER        CONFIG_STACK_SIZE_PAGE_ORDER
  #define __STACK_SIZE          (__PAGE_SIZE * (1 << __STACK_SIZE_PAGE_ORDER))
#define __WORDSIZE 32
diff --git a/arch/arm/arm64/include/uk/asm/limits.h 
b/arch/arm/arm64/include/uk/asm/limits.h
index cec05641..fb70f2ba 100644
--- a/arch/arm/arm64/include/uk/asm/limits.h
+++ b/arch/arm/arm64/include/uk/asm/limits.h
@@ -40,7 +40,7 @@
  #define __PAGE_MASK           (~((__PAGE_SIZE) - 1))
  #endif
-#define __STACK_SIZE_PAGE_ORDER 4
+#define __STACK_SIZE_PAGE_ORDER        CONFIG_STACK_SIZE_PAGE_ORDER
  #define __STACK_SIZE  (__PAGE_SIZE * (1 << __STACK_SIZE_PAGE_ORDER))
  #define __STACK_ALIGN_SIZE    16
diff --git a/arch/x86/x86_64/include/uk/asm/limits.h b/arch/x86/x86_64/include/uk/asm/limits.h
index a969bd17..21814044 100644
--- a/arch/x86/x86_64/include/uk/asm/limits.h
+++ b/arch/x86/x86_64/include/uk/asm/limits.h
@@ -39,7 +39,7 @@
  #define __PAGE_MASK           (~((__PAGE_SIZE) - 1))
  #endif
-#define __STACK_SIZE_PAGE_ORDER 4
+#define __STACK_SIZE_PAGE_ORDER        CONFIG_STACK_SIZE_PAGE_ORDER
  #define __STACK_SIZE          (__PAGE_SIZE * (1 << __STACK_SIZE_PAGE_ORDER))
#define __WORDSIZE 64


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.