Hi Martin, This patch series fixes a deadlock in the UFS driver between the suspend/resume code and the SCSI error handler. Please consider this patch series for the next merge window. Thanks, Bart. Changes compared to v2: * Replaced the custom error handling code in ufshcd_eh_timed_out() with a call to ufshcd_link_recovery(). Changes compared to v1: * Added support in the SCSI core for failing SCSI commands quickly during host recovery. * Removed the patch that splits the ufshcd_err_handler() function. * Fixed the code in ufshcd_eh_timed_out() for handling command timeouts. * Removed the power management notifier again. Bart Van Assche (8): scsi: core: Fix a race between scsi_done() and scsi_timeout() scsi: core: Change the return type of .eh_timed_out() scsi: core: Support failing requests while recovering scsi: ufs: Remove an outdated comment scsi: ufs: Use 'else' in ufshcd_set_dev_pwr_mode() scsi: ufs: Try harder to change the power mode scsi: ufs: Track system suspend / resume activity scsi: ufs: Fix a deadlock between PM and the SCSI error handler Documentation/scsi/scsi_eh.rst | 7 ++-- drivers/message/fusion/mptsas.c | 8 ++--- drivers/scsi/libiscsi.c | 26 +++++++------- drivers/scsi/megaraid/megaraid_sas_base.c | 7 ++-- drivers/scsi/mvumi.c | 4 +-- drivers/scsi/qla4xxx/ql4_os.c | 8 ++--- drivers/scsi/scsi_error.c | 41 +++++++++++------------ drivers/scsi/scsi_lib.c | 8 +++-- drivers/scsi/scsi_transport_fc.c | 6 ++-- drivers/scsi/scsi_transport_srp.c | 8 ++--- drivers/scsi/storvsc_drv.c | 4 +-- drivers/scsi/virtio_scsi.c | 4 +-- drivers/ufs/core/ufshcd.c | 37 +++++++++++++++----- include/scsi/libiscsi.h | 2 +- include/scsi/scsi_host.h | 14 +++++++- include/scsi/scsi_transport_fc.h | 2 +- include/scsi/scsi_transport_srp.h | 2 +- include/ufs/ufshcd.h | 5 ++- 18 files changed, 115 insertions(+), 78 deletions(-)