Re: on MAXMEM_PFN and VMALLOC_RESERVE

Joseph A. Knapka
2001-07-05T16:05:09Z

Kapish K wrote:
>
> Hello,
> What does this code ( in arch/i386/kernel/setup.c ), actually
> imply?
> /*
> *Determine low and high memory ranges:
> */
>
> max_low_pfn=max_pfn;
> if ( max_low_pfn > MAXMEM_PFN ){
> max_low_pfn = MAXMEM_PFN;
> #ifndef CONFIG_HIGHMEM
> /* Maximum memory usable is what is directlt addressable */
> Now here, what does this imply, and the significance of
> VMALLOC_RESERVE in the MAXMEM_PFN calculations ( as in setup.c )
> :MAXMEM_PFN PFN_DOWN(MAXMEM)
> where MAXMEM = (unsigned long) ( -PAGE_OFFSET - VMALLOC_RESERVE
> )
> Also, what is the significance of this in terms of physical RAM
> sizes of 128 mb or more ( even greater than 1 GB ). I assume
> that still will not be high mem.
> Any hints or pointers would be welcome.

Have a look at http://home.earthlink.net/~jknapka/linux-mm/kmap.html

Basically, MAX_MEM is the amount of address space available between
PAGE_OFFSET and the beginning of the VMALLOC_RESERVE area just
below 4GB. Thus, it's the maximum amount of physical RAM that
can be permanently mapped into kernel VM. max_low_pfn is the
highest page frame number of permanently-mapped RAM.

HTH,

-- Joe

-- Joe Knapka
"You know how many remote castles there are along the gorges? You
can't MOVE for remote castles!" -- Lu Tze re. Uberwald
// Linux MM Documentation in progress:
// http://home.earthlink.net/~jknapka/linux-mm/vmoutline.html
* Evolution is an "unproven theory" in the same sense that gravity is. *
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/