xpt_bus_register panics

Kenneth D. Merry ken at kdm.org
Fri Nov 18 08:44:47 PST 2005


On Fri, Nov 18, 2005 at 17:05:01 +0200, Danny Braniss wrote:
> > Danny Braniss wrote:
> > > hi,
> > > 	it seems that i might be doing something wrong, if the
> > > iscsi_initiator.ko is loaded early on by the boot loader via
> > > 	iscsi_initiator_load="YES"
> > > the kernel panics in xpt_bus_register(...)
> > > 
> > > i can move this part of the code, so that it will be done later, but
> > > was wondering if there is a 'correct' way to handle this.
> > > 
> > > danny
> > > 
> > 
> > Can you provide a traceback of the panic?  Also, you don't need
> > to special-case the module loading code with #ifdef KLD_MODULE.
> > It should be unconditional.
> what if it get's - someday - compiled into the kernel? but i see
> your point. 
> 
> 
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address   = 0x0
> fault code              = supervisor write, page not present
> instruction pointer     = 0x20:0xc044f014
> stack pointer           = 0x28:0xc0c20c30
> frame pointer           = 0x28:0xc0c20d18
> code segment            = base 0x0, limit 0xfffff, type 0x1b
>                         = DPL 0, pres 1, def32 1, gran 1
> processor eflags        = interrupt enabled, resume, IOPL = 0
> current process         = 0 (swapper)
> [thread pid 0 tid 0 ]
> Stopped at      xpt_bus_register+0xe4:  movl    %ebx,0(%eax)
> db> tr
> Tracing pid 0 tid 0 td 0xc0933a80
> xpt_bus_register(c555fd40,0,c0a564b0,c54202c0,c0a564b0) at 
> xpt_bus_register+0xe4
> ic_init(c0a567c0,c54202c0,c0c20d74,c063908b,c54202c0) at ic_init+0x51
> iscsi_load(c54202c0,0,0,c0934680,0) at iscsi_load+0xb7
> module_register_init(c0a564b0,c1ec00,c1e000,0,c0444fb5) at 
> module_register_init+0x4b
> mi_startup() at mi_startup+0x96
> begin() at begin+0x2c
> db>  

I wonder if your module is getting initialized before xpt_init() gets
called.

It looks like that section of xpt_bus_register() manipulates the
xpt_busses list, which gets initialized in xpt_init().

Ken
-- 
Kenneth Merry
ken at kdm.org


More information about the freebsd-scsi mailing list