On Wed, Mar 07, 2007 at 03:08:26PM -0700, Moore, Eric wrote:
> It appears that interrupts didn't get enabled during probe.  From
> mpt_attach(), we are issusing some commands that require interrupts, and
> they don't complete ending up in mpt_do_ioc_recovery being called.
> When mpt_do_ioc_recovery is called, it calls the callback handlers for
> each registerred driver, for instance mptsas.  From mptsas, the
> mptsas_ioc_reset is called.  It appears the oops occurs on the if(!hd ||
> !hd->ioc)  check, but it wouldn't make any sense since it says in the
> log below "Unable to handle kernel NULL pointer dereference ".    if hd
> was NULL, it should of returned.  Can you run objdump -l -d on
> mptsas.ko, and find out where mptsas_ioc_reset+0x35 is.

Hi Eric,

Here is the output for 'objdump -l -d' for mptsas_ioc_reset():

000000000000221b <mptsas_ioc_reset>:
mptsas_ioc_reset():
drivers/message/fusion/mptsas.c:817
    221b:       41 55                   push   %r13
    221d:       41 54                   push   %r12
    221f:       41 89 f4                mov    %esi,%r12d
    2222:       55                      push   %rbp
    2223:       53                      push   %rbx
    2224:       48 89 fb                mov    %rdi,%rbx
    2227:       48 83 ec 08             sub    $0x8,%rsp
drivers/message/fusion/mptsas.c:818
    222b:       48 8b af 48 01 00 00    mov    0x148(%rdi),%rbp
drivers/message/fusion/mptsas.c:822
    2232:       e8 00 00 00 00          callq  2237 <mptsas_ioc_reset+0x1c>
drivers/message/fusion/mptsas.c:824
    2237:       80 7b 40 02             cmpb   $0x2,0x40(%rbx)
drivers/message/fusion/mptsas.c:822
    223b:       41 89 c5                mov    %eax,%r13d
drivers/message/fusion/mptsas.c:824
    223e:       75 63                   jne    22a3 <mptsas_ioc_reset+0x88>
drivers/message/fusion/mptsas.c:827
    2240:       41 ff cc                dec    %r12d
    2243:       75 5e                   jne    22a3 <mptsas_ioc_reset+0x88>
drivers/message/fusion/mptsas.c:830
    2245:       48 89 e8                mov    %rbp,%rax
    2248:       48 05 d8 04 00 00       add    $0x4d8,%rax
    224e:       74 53                   je     22a3 <mptsas_ioc_reset+0x88>
    2250:       48 83 bd d8 04 00 00    cmpq   $0x0,0x4d8(%rbp)
    2257:       00
    2258:       74 49                   je     22a3 <mptsas_ioc_reset+0x88>
drivers/message/fusion/mptsas.c:833
    225a:       4c 8d a5 a8 07 00 00    lea    0x7a8(%rbp),%r12
    2261:       4c 39 a5 a8 07 00 00    cmp    %r12,0x7a8(%rbp)
    2268:       74 39                   je     22a3 <mptsas_ioc_reset+0x88>
drivers/message/fusion/mptsas.c:837
    226a:       48 8b b8 d0 02 00 00    mov    0x2d0(%rax),%rdi
    2271:       48 8b 1f                mov    (%rdi),%rbx
    2274:       eb 28                   jmp    229e <mptsas_ioc_reset+0x83>


It does point to the line you mentioned.

Thanks,
Judith 

> 
> Eric
> 
> 
> > -----Original Message-----
> > From: Judith Lebzelter [mailto:[EMAIL PROTECTED] 
> > Sent: Thursday, March 01, 2007 2:00 PM
> > To: [email protected]
> > Cc: Moore, Eric; [EMAIL PROTECTED]; [EMAIL PROTECTED]
> > Subject: kdump testing: 'mptsas' oops/failure to insmod
> > 
> > Hi,
> > 
> > I am testing drivers for whether they come up in a kexec situation.
> > For mptsas I found that it oopses on the insmod and fails to load.  
> > I am using lkdtt to trigger kexec and this happened for 
> > FS_DEVRW(exception.loop,overflow,panic) and INT_HARDWARE_ENTRY(bug,
> > exception.loop,overflow) crash points.  This was on 2.6.21-rc1/x86_64.
> > 
> > Here is the oops:
> > 
> > Loading mptsas.ko module^M
> > Fusion MPT SAS Host driver 3.04.04^M
> > ACPI: PCI Interrupt 0000:08:00.0[A] -> GSI 16 (level, low) -> IRQ 16^M
> > mptbase: Initiating ioc0 bringup^M
> > mptbase: ioc0: WARNING - Unexpected doorbell active!^M
> > ioc0: SAS1068E: Capabilities={Initiator}^M
> > PCI: Setting latency timer of device 0000:08:00.0 to 64^M
> > [-- MARK -- Thu Mar  1 08:30:00 2007]^M
> > Unable to handle kernel NULL pointer dereference at 
> > 00000000000004d8 RIP: ^M
> >  [<ffffffff88004250>] :mptsas:mptsas_ioc_reset+0x35/0x93^M
> > PGD 8606067 PUD 8601067 PMD 0 ^M
> > Oops: 0000 [1] ^M
> > CPU 0 ^M
> > Modules linked in: mptsas^M
> > Pid: 961, comm: insmod Not tainted 2.6.21-rc1-kdump #1^M
> > RIP: 0010:[<ffffffff88004250>]  [<ffffffff88004250>] 
> > :mptsas:mptsas_ioc_reset+0x35/0x93^M
> > RSP: 0000:ffff8100086159d8  EFLAGS: 00010206^M
> > RAX: 00000000000004d8 RBX: ffff810008b3d000 RCX: 000000000000000b^M
> > RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff810008b3d000^M
> > RBP: 0000000000000000 R08: ffffffff814732d0 R09: ffff810008682900^M
> > R10: ffff81000861c000 R11: ffffffff8800421b R12: 0000000000000000^M
> > R13: 0000000000000000 R14: ffff810008615a18 R15: ffffc20000010001^M
> > FS:  000000000057b850(0063) GS:ffffffff814ce000(0000) 
> > knlGS:0000000000000000^M
> > CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b^M
> > CR2: 00000000000004d8 CR3: 00000000085fa000 CR4: 00000000000006e0^M
> > Process insmod (pid: 961, threadinfo ffff810008614000, task 
> > ffff810008f30040)^M
> > Stack:  ffff810008b3d008 ffff810008b3d000 000000000000000b 
> > ffffffffffffffe0^M
> >  ffff810008c20870 ffffffff812300ee 00000000000106c0 0000000100000000^M
> >  0000000000100100 0000000000200200 0000000000000000 0000000000200200^M
> > Call Trace:^M
> >  [<ffffffff812300ee>] mpt_do_ioc_recovery+0xfe5/0x109b^M
> >  [<ffffffff8123029f>] mpt_timer_expired+0x0/0x24^M
> >  [<ffffffff81025357>] vprintk+0x22d/0x24c^M
> >  [<ffffffff81047aca>] __alloc_pages+0x61/0x2a8^M
> >  [<ffffffff81121a9e>] vsnprintf+0x557/0x59b^M
> >  [<ffffffff81121bed>] sprintf+0x51/0x59^M
> >  [<ffffffff8101483b>] mp_register_gsi+0x30/0xe5^M
> >  [<ffffffff81231e6b>] mpt_attach+0x56a/0x686^M
> >  [<ffffffff880042c4>] :mptsas:mptsas_probe+0x16/0x3df^M
> >  [<ffffffff810962fa>] sysfs_make_dirent+0x29/0x38^M
> >  [<ffffffff8112b76d>] pci_device_probe+0x4c/0x75^M
> >  [<ffffffff8117c89a>] really_probe+0xc4/0x148^M
> >  [<ffffffff8117cacb>] __driver_attach+0x6d/0xab^M
> >  [<ffffffff8117ca5e>] __driver_attach+0x0/0xab^M
> >  [<ffffffff8117ca5e>] __driver_attach+0x0/0xab^M
> >  [<ffffffff8117bd72>] bus_for_each_dev+0x43/0x6e^M
> >  [<ffffffff8117c0b4>] bus_add_driver+0x6b/0x18d^M
> >  [<ffffffff8112b90b>] __pci_register_driver+0x72/0xa7^M
> >  [<ffffffff8103bc10>] sys_init_module+0x1195/0x12e6^M
> >  [<ffffffff8100913e>] system_call+0x7e/0x83^M
> > ^M
> > ^M
> > Code: 48 83 bd d8 04 00 00 00 74 49 4c 8d a5 a8 07 00 00 4c 39 a5 ^M
> > RIP  [<ffffffff88004250>] :mptsas:mptsas_ioc_reset+0x35/0x93^M
> >  RSP <ffff8100086159d8>^M
> > CR2: 00000000000004d8^M
> > Trying to resume from LABEL=SWAP^M
> > No suspend signature on swap, not resuming.^M
> > Check if /proc/vmcore exists:^M
> > Check if /proc/vmcore is readable:^M
> > sleep to be sure hardware is ready^M
> > mount -t ext3 /dev/sdc /dump^M
> > mount: could not find filesystem '/dev/sdc'^M
> > 
> > 
> > Thanks,
> > Judith Lebzelter
> > 
> > 
> > 

----- End forwarded message -----
_______________________________________________
fastboot mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/fastboot

Reply via email to