Commit b4698d88 authored by Dan Williams's avatar Dan Williams Committed by James Bottomley

[SCSI] Revert "[SCSI] libsas: fix sas port naming"

This reverts commit a692b0ee.

Tom reports:

[    8.741033] ------------[ cut here ]------------
[    8.741038] WARNING: at fs/sysfs/dir.c:508 sysfs_add_one+0xc1/0xf0()
[    8.741040] Hardware name: To Be Filled By O.E.M.
[    8.741041] sysfs: cannot create duplicate filename

...and missing 2 out of 4 drives connected to mvsas.  Commit a692b0ee
made the assumption that all the phy ids an lldd registers to libsas are
unique.  However, in the "multi-chip" case mvsas does a rather annoying
duplication of phy ids in the array passed to libsas.  So, for example,
chip0 has phy0-3 at ha phy index 0-3 and chip1 has its phy0-3 at ha phy
index 4-7.  The more natural model would be to create a scsi_host (and
sas_ha) per chip (controller), but for now revert the naming fix which
unfortunately means dealing with unpredictable end-device names for a
bit longer.

Cc: Xiangliang Yu <yuxiangl@marvell.com>
Cc: Patrick Thomson <patrick.s.thomson@intel.com>
Reported-by: default avatarTom Rini <trini@ti.com>
Tested-by: default avatarTom Rini <trini@ti.com>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 7d1d8651
...@@ -123,7 +123,7 @@ static void sas_form_port(struct asd_sas_phy *phy) ...@@ -123,7 +123,7 @@ static void sas_form_port(struct asd_sas_phy *phy)
spin_unlock_irqrestore(&sas_ha->phy_port_lock, flags); spin_unlock_irqrestore(&sas_ha->phy_port_lock, flags);
if (!port->port) { if (!port->port) {
port->port = sas_port_alloc(phy->phy->dev.parent, phy->id); port->port = sas_port_alloc(phy->phy->dev.parent, port->id);
BUG_ON(!port->port); BUG_ON(!port->port);
sas_port_add(port->port); sas_port_add(port->port);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment