Port-ia64 archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Kernel Exception "Page Not Present"
Hi Marcel,
I'm not sure if you're familiar with NetBSD's uvm, but I'm trying to
get some quick tips about this one ( kernel dmesg below ).
Kernel is Page Faulting with "Not Present". I suspect this is too
early for anything really complicated, so either:
- pmap_enter_vhpt() didn't do its job.
- UVM is trying to fault in a kernel page ???!!!! Isn't this what
pmap_growkernel is for ?
- pmap_kenter_pa() screwed up with pte's
Also:
This might be a really dumb question, but can you tell me why we need
a Region 5 vhpt mapped region, when we already have a direct mapped
Region 7 region ? Its not immediately obvious to me.
Any clues would help me fix this quickly.
Here's the pmap.c which gave me the trace given below:
http://cherry.zyx.in/downloads/netbsd-anvil/pmap-debug/260206.pmap.c
Thanks,
Cherry.
--8<---------------cut here---------------start------------->8---
Console: ia64 SKI console
NetBSD/ia64 ia64 SKI boot, Revision 0.1
(cherry@nxakato, Sat Feb 25 13:31:59 IST 2006)
Type '?' for a list of commands, 'help' for more detailed help.
OK boot netbsd
2084600+73152+47568 [91824+54519]=0x232ea0
netbsd entry at 0xe000000004008000
Entering at 0xe000000004008000...
PAL code mapped by the kernel's TR
PAL Proc at 0xe000000000101580
SAL Proc at 0xe000000000101680, GP at 0xe000000000198ee8
SAL: AP wake-up vector: 0xff
Platform clock frequency 133338184 Hz
Processor ratio 11/2, Bus ratio 1/1, ITC ratio 11/2
MD 0xe000000000198b08: type 13 pa 0x100000 cnt 0x400
MD 0xe000000000198b30: type 7 pa 0x500000 cnt 0x8000
Descriptor 0xe000000000198b30 contains kernel
Loading chunk before kernel: 0x280 / 0x2000
Loading chunk after kernel: 0x211b / 0x4280
MD 0xe000000000198b58: type 7 pa 0x100000000 cnt 0x4000
Skipping memory chunk start 0x100000000
MD 0xe000000000198b80: type 12 pa 0xffffc000000 cnt 0x4000
physmem = 16384x
ptc.e base=0x0, count1=1, count2=1, stride1=0x0, stride2=0x0
Processor supports 18 Region ID bits
Trying VHPT size 0x10000
Putting VHPT at 0xe0000000005d0000
Loaded initial symtab at 0xe00000000420ecb8, strtab at 0xe0000000042259a8, #
entries 3806
pmap_init()
pmap_exit()
fatal kernel trap (cpu 0):
trap vector = 0x14 (Page Not Present)
cr.iip = 0xe00000000414d900
cr.ipsr = 0x1010080a2010 (mfl,ic,dt,dfh,rt,cpl=0,it,ri=0,bn)
cr.isr = 0x200000000 (code=0,vector=0,w,ei=0)
cr.ifa = 0xa0000000000040b4
curlwp = 0xe000000004207a00
pid = 0, comm =
Stopped in pid 0.1 () at netbsd:uvm_kmapent_alloc+0x390: [M0] st1 r15=
r14
db> t
--Kernel Call Trace--
uvm_kmapent_alloc(...)
uvm_map(...)
uvm_km_alloc(...)
kmeminit(...)
uvm_init(...)
main(...)
ia64_init(...)
start(...)
--8<---------------cut here---------------end--------------->8---
Home |
Main Index |
Thread Index |
Old Index