[PATCH v4 1/5] support: Add support_stack_alloc

Adhemerval Zanella adhemerval.zanella@linaro.org
Fri Mar 12 13:24:26 GMT 2021



On 10/03/2021 13:10, Florian Weimer wrote:
> * Adhemerval Zanella via Libc-alpha:
> 
>> +  /* Use MAP_NORESERVE so that RAM will not be wasted on the guard
>> +     bands; touch all the pages of the actual stack before returning,
>> +     so we know they are allocated.  */
>> +  void *alloc_base = xmmap (0,
>> +                            alloc_size,
>> +                            PROT_READ|PROT_WRITE,
>> +                            MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE|MAP_STACK,
>> +                            -1);
>> +  xmprotect (alloc_base, guardsize, PROT_NONE);
>> +  xmprotect (alloc_base + guardsize + stacksize, guardsize, PROT_NONE);
> 
> The usual pattern is to map with PROT_NONE and then use
> PROT_READ|PROT_WRITE with mprotect.
> 
> Rest looks okay, thanks.
> 
> Florian
> 

Ok, I will fix it and push upstream.


More information about the Libc-alpha mailing list