Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: fwohci panic at boot



> Hi! Christoph,
> 
> 
> From: "Christoph Egger" <Christoph_Egger%gmx.de@localhost>
> Date: Mon, 17 May 2010 14:30:30 +0200
> 
> > I tested the patch and I have another crash now:
> > 
> > fwohci0: interrupting at ioapic0 pin 22
> > fwohci0: OHCI version 1.10 (ROM=1)
> > fwohci0: No. of Isochronous channels is 4.
> > fwohci0: EUI64 00:11:d8:00:00:d3:db:d5
> > fwohci0: Phy 1394a available S400, 2 ports.
> > fwohci0: Link S400, max_rec 2048 bytes.
> > ieee1394if0 at fwohci0: IEEE1394 bus
> > fwip0 at ieee1394if0: IP over IEEE1394
> > panic: lockdebug_lookup: uninitialized lock (lock=0xffffffff80d442c8,
> from=ffffffff802bb05e)
> 
> > lockdebug_free() at netbsd:lockdebug_free
> > mutex_enter() at netbsd:mutex_enter+0x3d6
> > fw_busreset() at netbsd:fw_busreset+0x23f
> > firewireattach() at netbsd:firewireattach+0x255
> 
> 
> Oops...
> 
> firewire.c:firewireattach() ---
> 
>         fw_busreset(fc, FWBUSNOTREADY);                       // <<<<-----
>   
>         :
> 
>         if (!newrom_mtx_initialized) {
>                 /* 
>                  * newrom_mtx uses to mutual exclusion for newrom_space in
>                  * fw_busreset() globally.
>                  */
>                 mutex_init(&newrom_mtx, MUTEX_DEFAULT, IPL_BIO); //
> <<<<<---
>                 newrom_mtx_initialized = 1;
>         }
> 
> --- firewire.c:firewireattach()
> 
> However, my amd64 work now... ;-)
> Can you test by moving mutex_init ahead a little more?


Done. It boots further:

fwohci0: BUS reset
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
panic: kernel diagnostic assertion "!cpu_intr_p()" failed: file 
"sys/kern/subr_kmem.c", line 195
fatal breakpoint trap in supervisor mode
trap type 1 code 0 rip ffffffff8022a07d cs 8 rflags 246 cr2  0 cpl 6 rsp 
ffffffff80f31b78
Stopped in pid 0.1 (system) at  netbsd:breakpoint+0x5:  leave
db{0}> bt
breakpoint() at netbsd:breakpoint+0x5
panic() at netbsd:panic+0x2ba
kern_assert() at netbsd:kern_assert+0x2d
kmem_alloc() at netbsd:kmem_alloc+0x140
fwohci_intr() at netbsd:fwohci_intr+0xbe8
intr_biglock_wrapper() at netbsd:intr_biglock_wrapper+0x1d
Xintr_ioapic_level9() at netbsd:Xintr_ioapic_level9+0xf4
--- interrupt ---
Xspllower() at netbsd:Xspllower+0xe
main() at netbsd:main+0x21c


Christoph


Home | Main Index | Thread Index | Old Index