Subject: Re: crash dump failing on machine with 4GB
To: Juan RP <juan@xtrarom.org>
From: Chris Ross <cross+netbsd@distal.com>
List: port-sparc64
Date: 09/29/2007 00:10:33
On Sep 28, 2007, at 17:16, Juan RP wrote:
> You are right, it's initialized in scsipi_base.c:scsipi_get_xs()...
> but perhaps the callout was stopped previously and it wasn't
> reinitialized
> or something.
>
> Someone with scsipi(9) clue should answer :-)
Okay. I worked past that issue, just by "if the c_magic is 0,
don't do the KASSERT()". To get to the next point.
Now I'm seeing what I'd expected to see about the original
problem, the inability to do a crash dump:
dumping to dev 7,1 offset 4310231
dump 4096 iommu_dvmamap_load: pmap_extract failed 1c1c000
esiop0: unable to load cmd DMA map: -1i/o error
Calling callout_init of 0x5f89d20
sd0(esiop0:0:0:0): polling command not done
panic: scsipi_execute_xs
cpu0: kdb breakpoint at 141a400
Stopped in pid 0.2 (system) at netbsd:cpu_Debugger+0x4: nop
db>
The "Calling callout_init of" line is from my other debugging, but
the rest of it is in the -current kernel, in SIOP_DEBUG or DIAGNOSTIC
blocks.
So, the trick next is to figure out why the pmap_extract in
sparc64/dev/iommu.c:iommu_dvmamap_load() is failing. Hopefully
Martin will have a chance to figure that out. :-)
- Chris