Hi Martin, This patch series includes the following changes: - Introduce internal command and reserved tag support in the SCSI core. - Fix a deadlock in the UFS error handler. - Add polling support in the UFS driver. - Several smaller fixes for the UFS driver. Please consider these UFS driver kernel patches for kernel v5.17. Thanks, Bart. Changes compared to v1: - Introduced the symbolic constant UFSHCD_NUM_RESERVED. - Changed the behavior of the patch that removes the clock scaling lock from ufshcd_queuecommand() such that it again waits until all pending commands have finished before changing the clock frequency. - Split the patch that optimizes ufshcd_queuecommand(). - Added patches that introduce support for internal command management in the SCSI core. - Introduced a new function ufshcd_release_scsi_cmd(). Bart Van Assche (18): scsi: core: Unexport scsi_track_queue_full() scsi: core: Fix scsi_device_max_queue_depth() scsi: core: Fix a race between scsi_done() and scsi_times_out() scsi: core: Add support for reserved tags scsi: ufs: Rename a function argument scsi: ufs: Remove is_rpmb_wlun() scsi: ufs: Remove the sdev_rpmb member scsi: ufs: Remove dead code scsi: ufs: Switch to scsi_(get|put)_internal_cmd() scsi: ufs: Rework ufshcd_change_queue_depth() scsi: ufs: Fix a deadlock in the error handler scsi: ufs: Introduce ufshcd_release_scsi_cmd() scsi: ufs: Improve SCSI abort handling scsi: ufs: Fix a kernel crash during shutdown scsi: ufs: Stop using the clock scaling lock in the error handler scsi: ufs: Optimize the command queueing code scsi: ufs: Implement polling support scsi: ufs: Fix race conditions related to driver data Hannes Reinecke (2): block: Add a flag for internal commands scsi: core: Add support for internal commands block/blk-exec.c | 5 + drivers/scsi/scsi.c | 5 +- drivers/scsi/scsi_error.c | 29 +-- drivers/scsi/scsi_lib.c | 50 +++- drivers/scsi/ufs/tc-dwc-g210-pci.c | 1 - drivers/scsi/ufs/ufs-exynos.c | 4 +- drivers/scsi/ufs/ufshcd-pci.c | 2 - drivers/scsi/ufs/ufshcd-pltfrm.c | 2 - drivers/scsi/ufs/ufshcd.c | 375 ++++++++++++++++------------- drivers/scsi/ufs/ufshcd.h | 5 +- include/linux/blk-mq.h | 5 + include/linux/blk_types.h | 2 + include/scsi/scsi_device.h | 4 + include/scsi/scsi_host.h | 9 +- 14 files changed, 301 insertions(+), 197 deletions(-)