[PULL][SRU Bionic] hisi_sas driver fixes

dann frazier dann.frazier at canonical.com
Thu May 31 22:07:02 UTC 2018


I've combined fixes for the following bugs in this PR, as the fixes
all touch the same code:

hisi_sas robustness fixes:
  BugLink: https://bugs.launchpad.net/bugs/1774466

hisi_sas: Support newer v3 hardware:
  BugLink: https://bugs.launchpad.net/bugs/1774467

hisi_sas: improve performance by optimizing DQ locking:
  BugLink: https://bugs.launchpad.net/bugs/1774472

First one is a clean cherry-pick from mainline, remainder are all
clean cherry-picks from linux-next. Tested on HiSilicon D05 and
D06 platforms.

The following changes since commit b7be50f6450d62d2a2e3ad7599b63c6ca5c0006f:

  UBUNTU: Ubuntu-4.15.0-23.25 (2018-05-23 18:56:27 +0200)

are available in the Git repository at:

  git://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/linux hisi_sas-updates-bionic

for you to fetch changes up to 0496497a32a3bdaed5bd18800945cf31c97a417f:

  scsi: hisi_sas: Mark PHY as in reset for nexus reset (2018-05-31 15:18:44 -0600)

----------------------------------------------------------------
John Garry (3):
      scsi: hisi_sas: print device id for errors
      scsi: hisi_sas: stop controller timer for reset
      scsi: hisi_sas: add readl poll timeout helper wrappers

Wei Yongjun (1):
      scsi: hisi_sas: fix a typo in hisi_sas_task_prep()

Xiang Chen (19):
      scsi: hisi_sas: initialize dq spinlock before use
      scsi: hisi_sas: delete timer when removing hisi_sas driver
      scsi: hisi_sas: optimise the usage of DQ locking
      scsi: hisi_sas: Add some checks to avoid free'ing a sas_task twice
      scsi: hisi_sas: check host frozen before calling "done" function
      scsi: hisi_sas: fix PI memory size
      scsi: hisi_sas: check sas_dev gone earlier in hisi_sas_abort_task()
      scsi: hisi_sas: update PHY linkrate after a controller reset
      scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw
      scsi: hisi_sas: relocate smp sg map
      scsi: hisi_sas: make return type of prep functions void
      scsi: hisi_sas: allocate slot buffer earlier
      scsi: hisi_sas: Don't lock DQ for complete task sending
      scsi: hisi_sas: Use device lock to protect slot alloc/free
      scsi: hisi_sas: change slot index allocation mode
      scsi: hisi_sas: Change common allocation mode of device id
      scsi: hisi_sas: Reset disks when discovered
      scsi: hisi_sas: Create a scsi_host_template per HW module
      scsi: hisi_sas: Mark PHY as in reset for nexus reset

Xiaofei Tan (12):
      scsi: hisi_sas: update RAS feature for later revision of v3 HW
      scsi: hisi_sas: check IPTT is valid before using it for v3 hw
      scsi: hisi_sas: remove redundant handling to event95 for v3
      scsi: hisi_sas: workaround a v3 hw hilink bug
      scsi: hisi_sas: add check of device in hisi_sas_task_exec()
      scsi: hisi_sas: Add LED feature for v3 hw
      scsi: hisi_sas: Init disks after controller reset
      scsi: hisi_sas: Try wait commands before before controller reset
      scsi: hisi_sas: Include TMF elements in struct hisi_sas_slot
      scsi: hisi_sas: Add v2 hw force PHY function for internal ATA command
      scsi: hisi_sas: Terminate STP reject quickly for v2 hw
      scsi: hisi_sas: Fix return value when get_free_slot() failed

 drivers/scsi/hisi_sas/hisi_sas.h       |  49 ++-
 drivers/scsi/hisi_sas/hisi_sas_main.c  | 560 +++++++++++++++++++++++----------
 drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 129 ++++----
 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 262 ++++++++-------
 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 429 +++++++++++++++++--------
 5 files changed, 930 insertions(+), 499 deletions(-)




More information about the kernel-team mailing list