Bug 9909

Summary: Unable to handle kernel NULL pointer dereference at 0000000000000010 (mptsas_probe_expander_phys+0x62/0x427)
Product: IO/Storage Reporter: Krzysztof Oledzki (ole)
Component: SCSIAssignee: Eric Moore (Eric.Moore)
Status: CLOSED CODE_FIX    
Severity: blocking CC: max, ole
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.23, 2.6.23.14, 2.6.24 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: Oops from 2.6.23
Oops from 2.6.23.14 (truncated)
Dmesg from 2.6.22.17 (working)
Oops from 2.6.24
scsi-mpt-fusion-dont-oops-if-NumPhys-0.patch

Description Krzysztof Oledzki 2008-02-07 05:52:13 UTC
Latest working kernel version: 2.6.22-2.6.22.17
Distribution: Gentoo
Hardware Environment:
00:00.0 Host bridge [0600]: Intel Corporation 5000X Chipset Memory Controller Hub [8086:25c0] (rev 12)
00:02.0 PCI bridge [0604]: Intel Corporation 5000 Series Chipset PCI Express x4 Port 2 [8086:25e2] (rev 12)
00:03.0 PCI bridge [0604]: Intel Corporation 5000 Series Chipset PCI Express x4 Port 3 [8086:25e3] (rev 12)
00:04.0 PCI bridge [0604]: Intel Corporation 5000 Series Chipset PCI Express x8 Port 4-5 [8086:25f8] (rev 12)
00:05.0 PCI bridge [0604]: Intel Corporation 5000 Series Chipset PCI Express x4 Port 5 [8086:25e5] (rev 12)
00:06.0 PCI bridge [0604]: Intel Corporation 5000 Series Chipset PCI Express x8 Port 6-7 [8086:25f9] (rev 12)
00:07.0 PCI bridge [0604]: Intel Corporation 5000 Series Chipset PCI Express x4 Port 7 [8086:25e7] (rev 12)
00:08.0 System peripheral [0880]: Intel Corporation 5000 Series Chipset DMA Engine [8086:1a38] (rev 12)
00:10.0 Host bridge [0600]: Intel Corporation 5000 Series Chipset FSB Registers [8086:25f0] (rev 12)
00:10.1 Host bridge [0600]: Intel Corporation 5000 Series Chipset FSB Registers [8086:25f0] (rev 12)
00:10.2 Host bridge [0600]: Intel Corporation 5000 Series Chipset FSB Registers [8086:25f0] (rev 12)
00:11.0 Host bridge [0600]: Intel Corporation 5000 Series Chipset Reserved Registers [8086:25f1] (rev 12)
00:13.0 Host bridge [0600]: Intel Corporation 5000 Series Chipset Reserved Registers [8086:25f3] (rev 12)
00:15.0 Host bridge [0600]: Intel Corporation 5000 Series Chipset FBD Registers [8086:25f5] (rev 12)
00:16.0 Host bridge [0600]: Intel Corporation 5000 Series Chipset FBD Registers [8086:25f6] (rev 12)
00:1c.0 PCI bridge [0604]: Intel Corporation 631xESB/632xESB/3100 Chipset PCI Express Root Port 1 [8086:2690] (rev 09)
00:1d.0 USB Controller [0c03]: Intel Corporation 631xESB/632xESB/3100 Chipset UHCI USB Controller #1 [8086:2688] (rev 09)
00:1d.1 USB Controller [0c03]: Intel Corporation 631xESB/632xESB/3100 Chipset UHCI USB Controller #2 [8086:2689] (rev 09)
00:1d.7 USB Controller [0c03]: Intel Corporation 631xESB/632xESB/3100 Chipset EHCI USB2 Controller [8086:268c] (rev 09)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev d9)
00:1f.0 ISA bridge [0601]: Intel Corporation 631xESB/632xESB/3100 Chipset LPC Interface Controller [8086:2670] (rev 09)
00:1f.1 IDE interface [0101]: Intel Corporation 631xESB/632xESB IDE Controller [8086:269e] (rev 09)
00:1f.2 IDE interface [0101]: Intel Corporation 631xESB/632xESB/3100 Chipset SATA IDE Controller [8086:2680] (rev 09)
01:00.0 SCSI storage controller [0100]: LSI Logic / Symbios Logic SAS1068E PCI-Express Fusion-MPT SAS [1000:0058] (rev 08)
02:00.0 PCI bridge [0604]: Broadcom EPB PCI-Express to PCI-X Bridge [1166:0103] (rev c3)
03:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet [14e4:164c] (rev 12)
04:00.0 PCI bridge [0604]: Intel Corporation 6311ESB/6321ESB PCI Express Upstream Port [8086:3500] (rev 01)
04:00.3 PCI bridge [0604]: Intel Corporation 6311ESB/6321ESB PCI Express to PCI-X Bridge [8086:350c] (rev 01)
05:00.0 PCI bridge [0604]: Intel Corporation 6311ESB/6321ESB PCI Express Downstream Port E1 [8086:3510] (rev 01)
05:01.0 PCI bridge [0604]: Intel Corporation 6311ESB/6321ESB PCI Express Downstream Port E2 [8086:3514] (rev 01)
06:00.0 PCI bridge [0604]: Broadcom EPB PCI-Express to PCI-X Bridge [1166:0103] (rev c3)
07:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet [14e4:164c] (rev 12)
0e:0d.0 VGA compatible controller [0300]: ATI Technologies Inc ES1000 [1002:515e] (rev 02)

Software Environment:
Gnu C                  4.1.2
Gnu make               3.81
binutils               Binutils
util-linux             2.12r
mount                  2.12r
module-init-tools      3.4
e2fsprogs              1.40.5
Linux C Library        2.7
Dynamic linker (ldd)   2.7
Procps                 3.2.7
Net-tools              1.60
Kbd                    1.13
Sh-utils               6.9

Attaching dmesg with oopses (2.6.23 and 2.6.23.14) and dmesg from 2.6.14.17 (working kernel). Please also note that 2.6.23.14 is not able to dump a full Oops msg!
Comment 1 Krzysztof Oledzki 2008-02-07 05:53:38 UTC
Created attachment 14732 [details]
Oops from 2.6.23
Comment 2 Krzysztof Oledzki 2008-02-07 05:54:05 UTC
Created attachment 14733 [details]
Oops from 2.6.23.14 (truncated)
Comment 3 Krzysztof Oledzki 2008-02-07 05:55:57 UTC
Created attachment 14734 [details]
Dmesg from 2.6.22.17 (working)
Comment 4 Krzysztof Oledzki 2008-02-07 06:25:48 UTC
The same problem exists in 2.6.24.
Comment 5 Krzysztof Oledzki 2008-02-07 06:26:16 UTC
Created attachment 14736 [details]
Oops from 2.6.24
Comment 6 Krzysztof Oledzki 2008-02-10 09:31:04 UTC
Created attachment 14773 [details]
scsi-mpt-fusion-dont-oops-if-NumPhys-0.patch
Comment 7 Krzysztof Oledzki 2008-02-10 09:32:23 UTC
How about attached patch? Works for me.
Comment 8 Maximilian Wilhelm 2008-02-19 19:22:42 UTC
I had the same problem an a Dell PowerEdge 1950 with two SAS disks and the attached patch works for me, too.
Comment 9 Krzysztof Oledzki 2008-03-10 00:48:12 UTC
Fixed in 2.6.25-rc5