Re: TASK_UNMAPPED_BASE & stack location

Martin J. Bligh
2003-04-25T22:32:42Z

>> Is there any good reason we can't remove TASK_UNMAPPED_BASE, and just
>> shove libraries directly above the program text? Red Hat seems to have
>> patches to dynamically tune it on a per-processes basis anyway ...
>
> Yes. You won't get a continuous sbrk/brk heap then anymore. Not sure it
> is a big problem though.

Me no understand. I think this *makes* it a contiguous space. The way I see
it, we currently allocate from TASK_UNMAPPED_BASE up to the top, then start
again above program text. Which seems a bit silly.

> It's probably worth a sysctl at least.

mmm. I'd prefer a config option. Defaulting to 'y' ;-)

>> Moreover, can we put the stack back where it's meant to be, below the
>> program text, in that wasted 128MB of virtual space? Who really wants
>>> 128MB of stack anyway (and can't fix their app)?
>
> You could, but I bet it would break some programs
> (e.g. just moving __PAGE_OFFSET on amd64 to 4GB for 32bit broke some
> things)

I've moved PAGE_OFFSET around a lot (which moves the stack, as you say).
Haven't seen it break anything yet ... IMHO it was broken anyway if this
hurts it. Obviously not something one could do in a stable kernel series,
but 2.5 seems like a perfect time for it to me ... unless I'm missing some
glibc / linker thing, it seems like a simple change.

M.