pte-highmem-5

From: Andrea Arcangeli (andrea@suse.de)
Date: Wed Jan 16 2002 - 12:58:14 EST


After weeks of remote debugging I found one problem triggered by people
with the real highmem64 hardware and that really needs that much memory
mapped from lots of tasks at the same time.

They were running out of pagetables, mapping 1G per-task (shm for
example) will overflow the lowmem zone with PAE with some houndred tasks
in the system. They were pointing the finger at the VM but the VM was
just doing the very right thing to do.

This patch in short will move pagetables into highmem, obviously it
breaks all the archs out there. This should fix the problem completly
allowing linux to effectively support all the 64G possibly available in
the ia32 boxes (currently, without this patch, you risk to be able to
use only a few gigabytes).

-aa kernels as well obviously will support this feature from the very
next release and this patch is against 2.4.18pre2aa2, I recommend people
to test it on top of 2.4.18pre2aa2 and tell me if it works well or not.
If you don't have highmem you still can test it by configuring the
kernel with highmem emulation enabled.

        ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/patches/v2.4/2.4.18pre2aa2/pte-highmem-5

This will have to be forward ported to 2.5 as well of course. I
developed it on top of 2.4 because I must support this in 2.4-aa too
because HIGHMEM64G is basically useless for the most important people
without this additional change.

I'm too lazy to describe how it works with words, you've the source,
it seems not too dirty (it may still need some cleanup, suggestions as
welcome of course), and if you have questions I'll be glad to answer as
usual. patch is as well attached because it's not too big and I know
some people is annoyed by ftp downloads (mee too sometime :). thanks,

Andrea



-
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/



This archive was generated by hypermail 2b29 : Wed Jan 23 2002 - 21:00:16 EST