Re: Bug: Discontigmem virt_to_page() [Alpha,ARM,Mips64?]

From: Roman Zippel (
Date: Mon May 06 2002 - 03:54:06 EST


On Mon, 6 May 2002, Daniel Phillips wrote:

> I must be guilty of not explaining clearly. Suppose you have the following
> physical memory map:
> 0: 128 MB
> 8000,0000: 128 MB
> 1,0000,0000: 128 MB
> 1,8000,0000: 128 MB
> 2,0000,0000: 128 MB
> 2,8000,0000: 128 MB
> 3,0000,0000: 128 MB
> 3,8000,0000: 128 MB
> The total is 1 GB of installed ram. Yet the kernel's 1G virtual space,
> can only handle 128 MB of it. The rest falls out of the addressable range and
> has to be handled as highmem, that is if you preserve the linear relationship
> between kernel virtual memory and physical memory, as config_discontigmem does.
> Even if you go to 2G of kernel memory (restricting user space to 2G of virtual)
> you can only handle 256 MB.

Why do you want to preserve the linear relationship between virtual and
physical memory? There is little common code (and only during
initialization), which assumes a direct mapping. I can send you the
patches to fix this. Then you can map as much physical memory as you want
into a single virtual area and you only need a single pgdat.

bye, Roman

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Tue May 07 2002 - 22:00:26 EST