Re: [PATCH v3 00/13] Virtually mapped stacks with guard pages (x86, core)

From: Arnd Bergmann
Date: Tue Jun 21 2016 - 05:30:22 EST


On Monday, June 20, 2016 4:43:30 PM CEST Andy Lutomirski wrote:
>
> On my laptop, this adds about 1.5µs of overhead to task creation,
> which seems to be mainly caused by vmalloc inefficiently allocating
> individual pages even when a higher-order page is available on the
> freelist.

Would it help to have a fixed virtual address for the stack instead
and map the current stack to that during a task switch, similar to
how we handle fixmap pages?

That would of course trade the allocation overhead for a task switch
overhead, which may be better or worse. It would also give "current"
a constant address, which may give a small performance advantage
but may also introduce a new attack vector unless we randomize it
again.

Arnd