problem in sas_release_transport

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

 



Hi -

I ran across this issue in testing and was hoping someone could
comment. Note that the spc driver is one I'm writing, but the in tree
pm8001 driver exhibits the same problem.

The system is running openSUSE 11.3 (2.6.34-12-default) and is
connected to a SAS JBOD that issues PHY_VACANT during discovery. The
line causing the problem appears to be

	transport_container_unregister(&i->phy_attr_cont);

I believe the reason this would fail is if the container's linked list
was not empty. It appears that sas_set_ex_phy() calls sas_phy_alloc()
which would add the PHY to the container's linked list, but since the
response from the expander is PHY_VACANT, the code would return before
calling sas_phy_add(). While I don't completely understand the inner
workings, only PHY's added with sas_phy_add() are removed with
sas_phy_delete() which leaves the 4 vacant PHYs still allocated and in
the container's linked list, leading to the BUG during unregister.

Please CC me as I'm not a subscriber. Thanks!

---chuck

[ 1422.561562] ------------[ cut here ]------------
[ 1422.561568] kernel BUG at
/usr/src/packages/BUILD/kernel-default-2.6.34/linux-2.6.34/include/linux/transport_class.h:92!
[ 1422.561572] invalid opcode: 0000 [#1] SMP
[ 1422.561576] last sysfs file: /sys/bus/pci/drivers/spc/uevent
[ 1422.561579] CPU 3
[ 1422.561581] Modules linked in: ses enclosure spc(-) edd fuse loop
dm_mod libsas scsi_transport_sas iTCO_wdt iTCO_vendor_support sr_mod
ioatdma floppy shpchp i5400_edac edac_core sg dca i2c_i801 cdrom
e1000e i5k_amb thermal processor button container pci_hotplug pcspkr
thermal_sys sd_mod ata_generic uhci_hcd ata_piix ehci_hcd libata
scsi_mod usbcore reiserfs
[ 1422.561624]
[ 1422.561630] Pid: 2429, comm: rmmod Not tainted 2.6.34-12-default #1
X7DWE/X7DWE
[ 1422.561632] RIP: 0010:[<ffffffffa02b0136>]  [<ffffffffa02b0136>]
sas_release_transport+0x66/0x70 [scsi_transport_sas]
[ 1422.561649] RSP: 0018:ffff88007e431ec8  EFLAGS: 00010286
[ 1422.561652] RAX: 00000000fffffff0 RBX: ffff88007e90c000 RCX: ffff88007e5e5d40
[ 1422.561655] RDX: 000000000000101d RSI: ffffffff81241ee0 RDI: ffffffff81a494c0
[ 1422.561658] RBP: ffffffffa0329100 R08: 0000000000000000 R09: ffff88007e6186a0
[ 1422.561661] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000880
[ 1422.561663] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000001
[ 1422.561666] FS:  00007f4f92585700(0000) GS:ffff880001f80000(0000)
knlGS:0000000000000000
[ 1422.561669] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 1422.561672] CR2: 00007fa3269e8000 CR3: 000000007f07f000 CR4: 00000000000006e0
[ 1422.561675] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1422.561678] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1422.561681] Process rmmod (pid: 2429, threadinfo ffff88007e430000,
task ffff88007e3ae140)
[ 1422.561684] Stack:
[ 1422.561685]  0000000000000880 ffffffffa0322837 0000000000000000
ffffffff8108a9df
[ 1422.561691] <0> ffff880000637073 ffffffff81102d5b ffff88007dbba0a0
ffff88007e5a5448
[ 1422.561697] <0> 000000057ada4180 ffff88007dbba088 00ff88007e39bac0
ffff88007e5a54a0
[ 1422.561704] Call Trace:
[ 1422.561736]  [<ffffffffa0322837>] spc_exit+0x31/0x4a [spc]
[ 1422.561753]  [<ffffffff8108a9df>] sys_delete_module+0x18f/0x2a0
[ 1422.561765]  [<ffffffff81002efb>] system_call_fastpath+0x16/0x1b
[ 1422.561778]  [<00007f4f920e8d77>] 0x7f4f920e8d77
[ 1422.561780] Code: 75 29 48 8d bb 88 08 00 00 e8 a7 40 05 e1 85 c0
75 19 48 8d bb f0 08 00 00 e8 97 40 05 e1 85 c0 75 09 48 89 df 5b e9
da e8 e6 e0 <0f> 0b 0f 1f 84 00 00 00 00 00 41 57 49 89 ff 41 56 41 55
49 89
[ 1422.561823] RIP  [<ffffffffa02b0136>]
sas_release_transport+0x66/0x70 [scsi_transport_sas]
[ 1422.561833]  RSP <ffff88007e431ec8>
[ 1422.561837] ---[ end trace d1ecf0a2aec32ee5 ]---
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux