Subject: Re: pmap_steal_memory and badaddr.
To: Soren S. Jorvang <soren@wheel.dk>
From: TAKEMURA Shin <takemura@netbsd.org>
List: port-mips
Date: 12/04/2000 10:40:21
> Date: Sun, 3 Dec 2000 17:40:46 +0100
> From: "Soren S. Jorvang" <soren@wheel.dk>
>
> On Sun, Dec 03, 2000 at 08:33:12AM -0800, Jason R Thorpe wrote:
> > > I think that you can't call pmap_steal_memory after you call
> > > uvm_page_physload.
> >
> > That is correct, you cannot use pmap_steal_memory() after
> > uvm_page_physload().
>
> Hmm, the MIPS pmap_bootstrap() which is called after
> uvm_page_physload() calls pmap_steal_memory()..
Ah! I've confused.
What I wanted to say is "You can't call pmap_steal_memory
BEFORE you call uvm_page_physload."
Mips's pmap_steal_memory will allocate memory from vm_physmem,
which is empty until uvm_page_physload.
The problem is that we must call badaddr of locore.S to memory
detection before uvm_page_physload and badaddr requires valid
proc0 structure. So you can't use pmap_steal_memory to allocate
proc0.
Takemura