Subject: Re: uvm_page_physload
To: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
From: Nick Hudson <skrll@netbsd.org>
List: tech-kern
Date: 08/25/2006 18:16:06
On Friday 25 August 2006 14:52, Izumi Tsutsui wrote:
> skrll@NetBSD.org wrote:
> > Is end/avail_end inclusive or not?
>
> uvm/uvm_page.c has the following comment:
> >> * uvm_page_physload: load physical memory into VM system
> >> *
> >> * => all args are PFs
> >> * => all pages in start/end get vm_page structures
> >> * => areas marked by avail_start/avail_end get added to the free page
> >> pool * => we are limited to VM_PHYSSEG_MAX physical memory segments
>
> It looks struct vm_page is prepared for pages between start and end,
> and only pages between avail_start and avail_end are registered into
> the free page pool.
It's the free pages I'm concerned with...
The background for this is that hppa registers the pages between the PT_LOAD
segments of the kernel as free. There can be quite a few page there as the
linker script aligns to 2MByte boundaries.
I've played safe with declaring pages free via avail_start/avail_end in my
recent change.
Nick