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

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



Hi Simon,

Please read my previous emails more carefully. I said that in
plat/xen/x86/arch_events.c the stack already has STACK_SIZE bytes, I
don't see where is the problem.

And for plat/xen/x86/traps.c I said that there is bug, but that bug is
out of scope for this patch.

And I also said that this patch also touches Arm32 (see
arch/arm/arm/include/uk/asm/limits.h).

Cheers,
Costin

On 9/9/19 2:29 PM, Simon Kuenzer wrote:
> 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

_______________________________________________
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®.