Andi Kleen wrote:
> That's just an inadequate data structure. It does an linear search of the
> VMAs and you probably have a lot of them. Before you add kludges like this
> better fix the data structure for fast free space lookup.
If you mean the code in arch_get_unmapped_area(), yes, this needs
fixing. In fact, Ingo has already a patch which brings back the
performance of thread creation to what we had back in September/October.
> In some vendor kernels it's already in /proc/pid/mapped_base, but that is
> quite costly to change. That would probably give you the best of both, Just
> set it to a low value for the thread stacks and then reset it to the default.
>
> I guess that would be the better solution for your stacks.
Are you sure this is the best solution? It means the mmap regions for
restricted 31/32 bit addresses and that for the normal, unrestricted
mapping is continuous. This removes a lot of freedom in deciding where
the unrestricted mappings are best located and it would make programs
using threads have a very different memory layout. Not that it should
make any difference; but I can here /them/ already scream that this
breaks applications.
My kernel-uninformed opinion would be to keep the settings separate.
Oh, and please rename MAP_32BIT to MAP_31BIT. This will save nerves on
all sides.
- --
- --------------. ,-. 444 Castro Street
Ulrich Drepper \ ,-----------------' \ Mountain View, CA 94041 USA
Red Hat `--' drepper at redhat.com `---------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
iD8DBQE+u+fi2ijCOnn/RHQRAqeBAKC3ZlSCNcw3f7SXahvxRc0WMupYgwCgyBGy
fMqzCxWcx90e002CNUQqwgM=
=LDJf
-----END PGP SIGNATURE-----
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/