Subject: uvm_page_physload
To: None <tech-kern@netbsd.org>
From: Nick Hudson <skrll@netbsd.org>
List: tech-kern
Date: 08/24/2006 09:24:55
Hi,

Is end/avail_end inclusive or not? The man page doesn't help much

     uvm_page_physload(vaddr_t start, vaddr_t end, vaddr_t avail_start,
     vaddr_t avail_end, int free_list);

     ....

     uvm_page_physload() loads physical memory segments into VM space on the
     specified free_list.  It must be called at system boot time to set up
     physical memory management pages.  The arguments describe the start and
     end of the physical addresses of the segment, and the available start and
     end addresses of pages not already in use.


 It would appear that most code assumes it's exclusive, but

	if (atop(paddr) >= avail_start &&
	    atop(paddr) <= avail_end)
		uvm_pagefree(&pgs[lcv]);

I must be missing something.

Nick