Subject: Re: The question about the high memory support on MPC8360?

From: vijay baskar <[email-masked]>
Date: Wed, 28 Nov 2007 09:32:34 +0530

Hi,
"The kernel also allows hardcoded mapping
of IO regions into its virtual address space through the
io_block_mapping interface."

Can u tell me how this is in current arch/powerpc. Also does it mean 
that whatever be the size of the ram > 768 MB there is not going to be 
much improvement in performance in kernel space irrespective of invoking 
CONFIG_HIGHMEM or not?

Also do you think this low mem be enough if i have lots of kernel space 
processes each invoking lots of kmallocs. Will there be bottle necks?? 
Also what alternative do we have if  low mem of 768 MB is not enough??

Scott Wood wrote:

> vijay baskar wrote:
>
>> The kernel maps the last 1 GB of the virtual address space one to one
>> to the physical memory.
>
>
> No, it maps 768MB of RAM in this manner.
>
>> This is called the kernel space. After the one
>> to one mapping is done for the available physical memory, the
>> remaining virtual addresses are used for vmalloc and ioremap.
>
>
> And highmem mappings.
>
>> The kernel also allows hardcoded mapping
>> of IO regions into its virtual address space through the
>> io_block_mapping interface.
>
>
> Not in current arch/powerpc kernels.
>
>> Many boards use the block IO mapping to
>> map the CCSRBAR/IMMR into the kernel address space, such that the
>> physical address and the virutal address is the same. Virtual
>> addresses beyond these hardcoded mappings cannot be used by
>> vmalloc/ioremap.
>
>
> And this is why.
>
>> Now as more and more memory is added to the system the addresses
>> available for vmalloc and ioremap gets reduced, and memory allocations
>> start to fail, due to the lack of availability of virtual addresses.
>
>
> How so?  The size of lowmem is constant once you reach the threshold, 
> as is the size of the highmem mapping area.
>
> What *does* start to fail eventually, if you have a *lot* of highmem, 
> is that you run out of lowmem for pagetables and such.
>
> -Scott
>
>