Re: [LSF/MM/BFP TOPIC] Deprecate SPARSEMEM and have only SPARSEMEM_VMEMMAP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 10, 2024 at 11:03:58PM +0100, Matthew Wilcox wrote:
> I'm a little concerned about having this conversation without the
> affected architecture maintainers in the room.  However, I can speak to
> PA-RISC.

Yes, having the architecture maintainers would be great.

> Early models have a dense memory layout and we need not be concerned
> with them.  I'm not quite sure about the PA-7200 to PA-8500 ccio based
> machines, would need to do some research.  For the PA-8500+ astro based
> machines, the 256MB that would be in the range 3.75GB to 4GB is
> relocated to 67.75-68GB to leave space for PCI mmio.  So if you have
> a machine with 8GB of memory (fairly typical for a J6000 machine),
> you'd have three ranges of memory:
> 
> 0-3.75GB
> 4-8GB
> 67.75-68GB
> 
> and I'd like to see an analysis of how laying out memmap would differ
> for those machines.

Maybe Mike can prove me wrong, but I assume that memblock will report
the above ranges as memory, and the 3.75GB to 4GB as somewhat reserved.
Then, we only mark those sections falling within the ranges reported as
having memory by memblock as present, and we only populate the memmap
for present sections.

So, those ranges from above will be represented by present sections
and hence with the vmemmap populated, and anything that falls off
will not.

I am not sure if I got your concern right though.


> The PA-8800+ pluto chipset does something similar, except it
> supports more memory and more PCI mmio, so a 32GB rp3440 would have
> a memmap:
> 
> 0-3GB
> 4-32GB
> 259-260GB
> 
> I think this would actually work better as three zones rather than
> three sections.  It might match quite well with the TAO proposal.

But those are not really sections, are they? But rather memory ranges.
Checking the code from parisc, sections are at 128MB granularity.
So you will have 

0-3GB ->     0    .. 23   section (memmap populated)
4-32GB ->    31   .. 255  section (memmap populated)
259-260GB -> 2071 .. 2079 section (memmap populated)



-- 
Oscar Salvador
SUSE Labs




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux