From: Bart Van Assche <bvanassche@acm.org>
To: "Martin K . Petersen" <martin.petersen@oracle.com>
Cc: Jaegeuk Kim <jaegeuk@kernel.org>,
linux-scsi@vger.kernel.org,
Adrian Hunter <adrian.hunter@intel.com>,
Bart Van Assche <bvanassche@acm.org>
Subject: [PATCH v4 00/10] Fix a deadlock in the UFS driver
Date: Tue, 18 Oct 2022 13:29:48 -0700 [thread overview]
Message-ID: <20221018202958.1902564-1-bvanassche@acm.org> (raw)
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 v3:
* Added two patches: one patch to reduce the START STOP UNIT timeout and another
patch that introduces the ufshcd_execute_start_stop() function.
* Modified patch 3 such that it introduces a new flag (SCMD_FAIL_IF_RECOVERING)
instead of modifying the behavior for the REQ_FAILFAST flags.
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 (10):
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: Reduce the START STOP UNIT timeout
scsi: ufs: Try harder to change the power mode
scsi: ufs: Track system suspend / resume activity
scsi: ufs: Introduce the function ufshcd_execute_start_stop()
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 | 7 +-
drivers/scsi/scsi_transport_srp.c | 8 +--
drivers/scsi/storvsc_drv.c | 4 +-
drivers/scsi/virtio_scsi.c | 4 +-
drivers/ufs/core/ufshcd.c | 86 ++++++++++++++++++-----
include/scsi/libiscsi.h | 2 +-
include/scsi/scsi_cmnd.h | 3 +-
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 +-
19 files changed, 155 insertions(+), 91 deletions(-)
next reply other threads:[~2022-10-18 20:30 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-18 20:29 Bart Van Assche [this message]
2022-10-18 20:29 ` [PATCH v4 01/10] scsi: core: Fix a race between scsi_done() and scsi_timeout() Bart Van Assche
2022-10-18 20:29 ` [PATCH v4 02/10] scsi: core: Change the return type of .eh_timed_out() Bart Van Assche
2022-10-20 17:22 ` Mike Christie
2022-10-18 20:29 ` [PATCH v4 03/10] scsi: core: Support failing requests while recovering Bart Van Assche
2022-10-19 19:52 ` Mike Christie
2022-10-19 21:11 ` Bart Van Assche
2022-10-20 17:20 ` Mike Christie
2022-10-18 20:29 ` [PATCH v4 04/10] scsi: ufs: Remove an outdated comment Bart Van Assche
2022-10-18 20:29 ` [PATCH v4 05/10] scsi: ufs: Use 'else' in ufshcd_set_dev_pwr_mode() Bart Van Assche
2022-10-18 20:29 ` [PATCH v4 06/10] scsi: ufs: Reduce the START STOP UNIT timeout Bart Van Assche
2022-10-18 20:29 ` [PATCH v4 07/10] scsi: ufs: Try harder to change the power mode Bart Van Assche
2022-10-18 20:29 ` [PATCH v4 08/10] scsi: ufs: Track system suspend / resume activity Bart Van Assche
2022-10-18 20:29 ` [PATCH v4 09/10] scsi: ufs: Introduce the function ufshcd_execute_start_stop() Bart Van Assche
2022-10-19 19:57 ` Mike Christie
2022-10-19 21:13 ` Bart Van Assche
2022-10-20 17:21 ` Mike Christie
2022-10-18 20:29 ` [PATCH v4 10/10] scsi: ufs: Fix a deadlock between PM and the SCSI error handler Bart Van Assche
2022-10-22 3:27 ` [PATCH v4 00/10] Fix a deadlock in the UFS driver Martin K. Petersen
2022-10-23 6:16 ` Avri Altman
2022-10-24 23:27 ` Bart Van Assche
2022-10-27 2:58 ` Martin K. Petersen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221018202958.1902564-1-bvanassche@acm.org \
--to=bvanassche@acm.org \
--cc=adrian.hunter@intel.com \
--cc=jaegeuk@kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox