Cc: Arjan van de Ven <arjan@...>, <akpm@...>, <hugh@...>, <linux-mm@...>, <linux-kernel@...>, <briangrant@...>, <cgd@...>, <mbligh@...>, Linus Torvalds <torvalds@...>, Thomas Gleixner <tglx@...>, H. Peter Anvin <hpa@...>
i suspect you are talking about option #2 i described. It is the option
which will take the most time to trickle down to people.
hm, i think the set of people running on such boxes _and_ then upgrading
to a new glibc and expecting everything to be just as fast to the
microsecond as before should be miniscule. Those P4 derived 64-bit boxes
were astonishingly painful in 64-bit mode - most of that hw is running
32-bit i suspect, because 64-bit on it was really a joke.
Btw., can you see any problems with option #1: simply removing MAP_32BIT
from 64-bit stack allocations in glibc unconditionally? It's the fastest
to execute and also the most obvious solution. +1 usecs overhead in the
64-bit context-switch path on those old slow boxes wont matter much.
10 _millisecs_ to start a single thread on top-of-the-line hw is quite
unaccepable. (and there's little sane we can do in the kernel about
allocation overhead when we have an imperfectly filled 4GB box for all
allocations)
Ingo
--