scsi: mptsas: Fixup device hotplug for VMWare ESXi
authorHannes Reinecke <hare@suse.de>
Thu, 24 Aug 2017 12:52:43 +0000 (14:52 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 25 Aug 2017 21:32:42 +0000 (17:32 -0400)
VMWare ESXi emulates an mptsas HBA, but exposes all drives as
direct-attached SAS drives.  This it not how the driver originally
envisioned things; SAS drives were supposed to be connected via an
expander, and only SATA drives would be direct attached.  As such, any
hotplug event for direct-attach SAS drives was silently ignored, and the
guest failed to detect new drives from within a VMWare ESXi environment.

[mkp: typos]

Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1030850
Signed-off-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/message/fusion/mptsas.c

index f6308ad35b19774d64fcdd008466ac458a185f61..42ee70c23d9fe044a38620b3412e75f73d5c4608 100644 (file)
@@ -4352,11 +4352,10 @@ mptsas_hotplug_work(MPT_ADAPTER *ioc, struct fw_event_work *fw_event,
                        return;
 
                phy_info = mptsas_refreshing_device_handles(ioc, &sas_device);
-               /* Only For SATA Device ADD */
-               if (!phy_info && (sas_device.device_info &
-                               MPI_SAS_DEVICE_INFO_SATA_DEVICE)) {
+               /* Device hot plug */
+               if (!phy_info) {
                        devtprintk(ioc, printk(MYIOC_s_DEBUG_FMT
-                               "%s %d SATA HOT PLUG: "
+                               "%s %d HOT PLUG: "
                                "parent handle of device %x\n", ioc->name,
                                __func__, __LINE__, sas_device.handle_parent));
                        port_info = mptsas_find_portinfo_by_handle(ioc,