mbox series

[00/18] smartpqi updates

Message ID 164375113574.440833.13174600317115819605.stgit@brunhilda.pdev.net
Headers show
Series smartpqi updates | expand

Message

Don Brace Feb. 1, 2022, 9:47 p.m. UTC
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

Comments

Martin K. Petersen Feb. 8, 2022, 4:40 a.m. UTC | #1
Don,

>  * Bump the driver version to 2.1.14-035

Applied to 5.18/scsi-staging, thanks!

Next time please run checkpatch!
Martin K. Petersen Feb. 11, 2022, 11:25 p.m. UTC | #2
On Tue, 1 Feb 2022 15:47:47 -0600, Don Brace wrote:

> 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
> 
> [...]

Applied to 5.18/scsi-queue, thanks!

[01/18] smartpqi: fix rmmod stack trace
        https://git.kernel.org/mkp/scsi/c/c4ff687d25c0
[02/18] smartpqi: add PCI IDs
        https://git.kernel.org/mkp/scsi/c/c57ee4ccb358
[03/18] smartpqi: enable SATA NCQ priority in sysfs
        https://git.kernel.org/mkp/scsi/c/2a47834d9452
[04/18] smartpqi: eliminate drive spin down on warm boot
        https://git.kernel.org/mkp/scsi/c/70ba20be4bb1
[05/18] smartpqi: propagate path failures to SML quickly
        https://git.kernel.org/mkp/scsi/c/94a68c814328
[06/18] smartpqi: fix a name typo and cleanup code
        https://git.kernel.org/mkp/scsi/c/b4dc06a9070e
[07/18] smartpqi: fix a typo in func pqi_aio_submit_io
        https://git.kernel.org/mkp/scsi/c/9e98e60bfca3
[08/18] smartpqi: resolve delay issue with PQI_HZ value
        https://git.kernel.org/mkp/scsi/c/42dc0426fbbb
[09/18] smartpqi: avoid drive spin-down during suspend
        https://git.kernel.org/mkp/scsi/c/b73357a1fd39
[10/18] smartpqi: update volume size after expansion
        https://git.kernel.org/mkp/scsi/c/27655e9db479
[11/18] smartpqi: fix kdump issue when ctrl is locked up
        https://git.kernel.org/mkp/scsi/c/3ada501d602a
[12/18] smartpqi: speed up RAID 10 sequential reads
        https://git.kernel.org/mkp/scsi/c/5d8fbce04d36
[13/18] smartpqi: expose SAS address for SATA drives
        https://git.kernel.org/mkp/scsi/c/00598b056aa6
[14/18] smartpqi: fix NUMA node not updated during init
        https://git.kernel.org/mkp/scsi/c/c52efc923856
[15/18] smartpqi: fix BUILD_BUG_ON() statements
        https://git.kernel.org/mkp/scsi/c/5e6935864d81
[16/18] smartpqi: fix hibernate and suspend
        https://git.kernel.org/mkp/scsi/c/c66e078ad89e
[17/18] smartpqi: fix lsscsi-t SAS addresses
        https://git.kernel.org/mkp/scsi/c/291c2e0071ef
[18/18] smartpqi: update version to 2.1.14-035
        https://git.kernel.org/mkp/scsi/c/62ed6622aaf0