[RFC PATCH v4 0/9] scsi: scsi_error: Introduce new error handle mechanism

JiangJianJun posted 9 patches 2 weeks, 4 days ago
drivers/scsi/scsi_debug.c  |  15 +-
drivers/scsi/scsi_error.c  | 422 ++++++++++++++++++++++++++++++++-----
drivers/scsi/scsi_lib.c    |   7 +
drivers/scsi/scsi_priv.h   |   8 +
drivers/scsi/scsi_scan.c   |   7 +
drivers/scsi/scsi_sysfs.c  |   2 +
include/scsi/scsi_device.h |  49 +++++
include/scsi/scsi_eh.h     |   4 +
include/scsi/scsi_host.h   |  18 +-
9 files changed, 476 insertions(+), 56 deletions(-)
[RFC PATCH v4 0/9] scsi: scsi_error: Introduce new error handle mechanism
Posted by JiangJianJun 2 weeks, 4 days ago
> Additionally: TARGET RESET TMF is dead, and has been removed from SAM
> since several years. It really is not worthwhile implementing.

Hannes suggested removing the faulty handler on the target, so I revised
a version and submitted it as a proposal.

> Also, was this all tested with libata and libsas attached devices as well ?
> They all depend on scsi EH.

And I removed the settings for iscsi_tcp and virtio_scsi, maybe that
adding this proposal to specific drivers before the plan is finalized is
not appropriate. Keep the setting of scsi_debug for test the solution.

The introduction can be simplified as follows: This tmf only blocks IO
on the current device and does not interfere with IO or tmf on other
devices. 


JiangJianJun (1):
  scsi: scsi_debug: Add params for configuring the error handler

Wenchao Hao (8):
  scsi: scsi_error: Define framework for LUN based error handle
  scsi: scsi_error: Move complete variable eh_action from shost to
    sdevice
  scsi: scsi_error: Check if to do reset in scsi_try_xxx_reset
  scsi: scsi_error: Add helper scsi_eh_sdev_stu to do START_UNIT
  scsi: scsi_error: Add helper scsi_eh_sdev_reset to do lun reset
  scsi: scsi_error: Add flags to mark error handle steps has done
  scsi: scsi_error: Add helper to handle scsi device's error command
    list
  scsi: scsi_error: Add a general LUN based error handler

 drivers/scsi/scsi_debug.c  |  15 +-
 drivers/scsi/scsi_error.c  | 422 ++++++++++++++++++++++++++++++++-----
 drivers/scsi/scsi_lib.c    |   7 +
 drivers/scsi/scsi_priv.h   |   8 +
 drivers/scsi/scsi_scan.c   |   7 +
 drivers/scsi/scsi_sysfs.c  |   2 +
 include/scsi/scsi_device.h |  49 +++++
 include/scsi/scsi_eh.h     |   4 +
 include/scsi/scsi_host.h   |  18 +-
 9 files changed, 476 insertions(+), 56 deletions(-)

-- 
2.33.0