Message ID | 1537770916-16337-1-git-send-email-suganath-prabu.subramani@broadcom.com (mailing list archive) |
---|---|
Headers | show |
Series | mpt3sas: Hot-Plug Surprise removal support on IOC. | expand |
On Mon, Sep 24, 2018 at 9:36 AM Suganath Prabu S <suganath-prabu.subramani@broadcom.com> wrote: > > Posting below set of patches to support PCIe Hot Plug surprise removal, > and few defect fixes. > > This is NOT the normal PCIe Hot Plug support, whereby the user informs the > OS that a hot removal is desired, the OS does an orderly shutdown of the > driver on the device, special hot plug circuitry removes power from the > PCIe slot, then the user can remove the device and replace it > (where orderly bring-up of the device is done). > > With a true surprise removal (just removing HBA from a slot) > there is a possibility to get all kinds of PCIe transaction errors, > Below patches addresses those issues and remove HBA without bringing > the system down. > > For surprise removal detection, driver does a PCI > read of IOC's vendor field in IOC's PCI configuration space. > If the read value is 0xFFFFFFFF this indicates that the device > might have hot removed and the device will be removed from driver. > AFAIR Lukas asked you to Cc new versions to Linux PCI mailing list and, if I'm not mistaken, to him. > V1 changes: > In Patch 0001 - unlock mutex, if active reset is in progress. > > V2 changes: > Replaced mpt3sas_base_pci_device_is_unplugged with > pci_device_is_present. > > V3 Change Set: > Simplified function "mpt3sas_base_pci_device_is_available" and > made inline > > Suganath Prabu S (6): > mpt3sas: Introduce mpt3sas_base_pci_device_is_available > mpt3sas: Separate out mpt3sas_wait_for_ioc_to_operational > mpt3sas: Introdude _scsih_get_shost_and_ioc. > mpt3sas: Fix Sync cache command failure during driver unload. > mpt3sas: Fix driver modifying NVRAM/persistent data. > mpt3sas: Bump driver version to 27.100.00.00. > > drivers/scsi/mpt3sas/mpt3sas_base.c | 135 +++++++++++++++------- > drivers/scsi/mpt3sas/mpt3sas_base.h | 11 +- > drivers/scsi/mpt3sas/mpt3sas_config.c | 32 +----- > drivers/scsi/mpt3sas/mpt3sas_ctl.c | 26 +---- > drivers/scsi/mpt3sas/mpt3sas_scsih.c | 189 +++++++++++++++++++++++++++---- > drivers/scsi/mpt3sas/mpt3sas_transport.c | 82 +++----------- > 6 files changed, 298 insertions(+), 177 deletions(-) > > -- > 1.8.3.1 >