These patches are based on Martin Petersen's 5.18/scsi-queue tree https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git 5.18/scsi-queue This set of changes consist of: * Correcting a stack trace when the driver is unloaded. The driver was holding a spin lock when calling scsi_remove_device. * Adding in new PCI device IDs and aligning the device order with our out-of-box driver. No functional changes. * Allow NCQ to be enabled for SATA disks. The controller firmware has to have support for this feature. * Enhance reboot performance by now issuing disk spin-downs during reboots. This eliminates spin-up time required doing the boot up. * Speed up multipath failover detection by returning DID_NO_CONNECT when the controller returns a path failure. Previously, the driver was waiting on an internal re-scan to detect the path failure. * Change function name pqi_is_io_high_priority() to pqi_is_io_high_priority() for better readability. Remove some white spaces from the same function. * Correct the structure used for AIO command submission. The structure used was pqi_raid_path_request, but needs to be pqi_aio_path_request. Both structure are the same size and have the same member offsets, so no issues were reported. * A PQI_HZ MACRO was introduced some time ago to resolve some timing issues. This definition is not needed. Switch back to using HZ. * For certain controllers, there was a request to avoid a drive spin-down for suspend (S3) state transitions. * For small drive expansions, the driver was not detecting the new size changes. We added a rescan whenever the driver receives an event from the controller. * In some rare cases, the controller can be locked up when a kdump is requested. When this occurs, the kdump is failed. This helps in debugging the cause of the lockup. * For RAID 10 disks, only one set of disks were used for read operations. Now we spread out I/O to all volumes. This resolves some inconsistent performance issues. * Export SAS addresses for all disks instead of only SAS disks. * Correct NUMA node association during pci_probe. A small typo was causing a different NUMA node to be set. * Not all structures were checked with BUILD_BUG_ON. * Correct some rare Hibernate/Suspend issues. Newer controllers may boot up with different timings. * Correct WWID output for lsscsi -t. The wrong part of the 16-byte WWID was used for the SAS address field. * Bump the driver version to 2.1.14-035 --- Balsundar P (1): smartpqi: resolve delay issue with PQI_HZ value Don Brace (3): smartpqi: fix rmmod stack trace smartpqi: add PCI IDs smartpqi: update version to 2.1.14-035 Gilbert Wu (1): smartpqi: enable SATA NCQ priority in sysfs Kevin Barnett (5): smartpqi: fix a name typo and cleanup code smartpqi: fix a typo in func pqi_aio_submit_io smartpqi: expose SAS address for SATA drives smartpqi: fix hibernate and suspend smartpqi: fix lsscsi-t SAS addresses Mahesh Rajashekhara (2): smartpqi: update volume size after expansion smartpqi: fix kdump issue when ctrl is locked up Mike McGowen (3): smartpqi: speed up RAID 10 sequential reads smartpqi: fix NUMA node not updated during init smartpqi: fix BUILD_BUG_ON() statements Murthy Bhat (1): smartpqi: propagate path failures to SML quickly Sagar Biradar (2): smartpqi: eliminate drive spin down on warm boot smartpqi: avoid drive spin-down during suspend drivers/scsi/smartpqi/smartpqi.h | 16 +- drivers/scsi/smartpqi/smartpqi_init.c | 541 +++++++++++++++++++------- drivers/scsi/smartpqi/smartpqi_sis.c | 10 +- drivers/scsi/smartpqi/smartpqi_sis.h | 1 + 4 files changed, 414 insertions(+), 154 deletions(-) -- Signature