Subject: Re: panic: ubc_init: failed to map ubc_object
To: None <current-users@netbsd.org, chs@netbsd.org>
From: Rafal Boni <rafal@mediaone.net>
List: current-users
Date: 03/20/2001 13:58:33
In message <200103200803.DAA11916@doppelganger.waterside.net>, I wrote:
-> Has anything in UVM/UBC changed recently that could be related
-> to the above panic? I CVS updated my tree ~ 7pm EST on 3/19 and
-> now my Indigo2 panics there (not that the SGImips kernel did a
-> whole lot more than that, but now it's totally useless).
->
-> I haven't updated my x86 box, so this could be MIPS/SGI specific,
-> but I figured I'd ask, go to bed and then hope answers arrive while
-> I snooze.
It seems this is related to the change from `ubc_winsize' to `ubc_winshift'.
The MIPS pmap module sizes the virtual space as follows:
start = VM_MIN_KERNEL_ADDRESS;
end = VM_MIN_KERNEL_ADDRESS + Sysmapsize * NBPG;
where:
Sysmapsize = (VM_PHYS_SIZE + ubc_nwins * ubc_winsize +
nbuf * MAXBSIZE + 16 * NCARGS + PAGER_MAP_SIZE) / NBPG +
(maxproc * UPAGES) + nkmempages;
*However*, when Sysmapsize is calculated, `ucb_winsize' is still zero (as
UBC init runs much later and it's not set until ubc_init()).
I imagine the easiest thing is to just initialize ubc_winsize from
ubc_winshift in uvm_bio.c... Was this not done for some reason other
than forgetting to do it or overlooking it?
The other option (which seems like a lot of work for little gain), is
to purge ubc_winsize totally from the tree, but it certainly looks like
this is not what Chuq intended (since it's used often even in uvm_bio.c).
Thoughts?
--rafal
----
Rafal Boni rafal@mediaone.net