From: Wenchao Hao <haowenchao2@huawei.com>
To: "James E . J . Bottomley" <jejb@linux.ibm.com>,
"Martin K . Petersen" <martin.petersen@oracle.com>,
<linux-scsi@vger.kernel.org>
Cc: <linux-kernel@vger.kernel.org>, <louhongxiang@huawei.com>,
Wenchao Hao <haowenchao2@huawei.com>
Subject: [PATCH v3 0/4] SCSI: Fix issues between removing device and error handle
Date: Mon, 16 Oct 2023 10:03:10 +0800 [thread overview]
Message-ID: <20231016020314.1269636-1-haowenchao2@huawei.com> (raw)
I am testing SCSI error handle with my previous scsi_debug error
injection patches, and found some issues when removing device and
error handler happened together.
These issues are triggered because devices in removing would be skipped
when calling shost_for_each_device().
Three issues are found:
1. statistic info printed at beginning of scsi_error_handler is wrong
2. device reset is not triggered
3. IO requeued to request_queue would be hang after error handle
V3:
- Update patch description
- Update comments of functions added
V2:
- Fix IO hang by run all devices' queue after error handler
- Do not modify shost_for_each_device() directly but add a new
helper to iterate devices but do not skip devices in removing
Wenchao Hao (4):
scsi: core: Add new helper to iterate all devices of host
scsi: scsi_error: Fix wrong statistic when print error info
scsi: scsi_error: Fix device reset is not triggered
scsi: scsi_core: Fix IO hang when device removing
drivers/scsi/scsi.c | 46 ++++++++++++++++++++++++++------------
drivers/scsi/scsi_error.c | 4 ++--
drivers/scsi/scsi_lib.c | 2 +-
include/scsi/scsi_device.h | 25 ++++++++++++++++++---
4 files changed, 57 insertions(+), 20 deletions(-)
--
2.32.0
next reply other threads:[~2023-10-16 2:03 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-16 2:03 Wenchao Hao [this message]
2023-10-16 2:03 ` [PATCH v3 1/4] scsi: core: Add new helper to iterate all devices of host Wenchao Hao
2023-10-17 15:31 ` kernel test robot
2023-10-16 2:03 ` [PATCH v3 2/4] scsi: scsi_error: Fix wrong statistic when print error info Wenchao Hao
2023-10-16 2:03 ` [PATCH v3 3/4] scsi: scsi_error: Fix device reset is not triggered Wenchao Hao
2023-10-16 2:03 ` [PATCH v3 4/4] scsi: scsi_core: Fix IO hang when device removing Wenchao Hao
2023-11-14 21:23 ` Mike Christie
2023-11-14 21:47 ` Mike Christie
2023-11-15 16:24 ` Wenchao Hao
2024-03-07 14:36 ` Wenchao Hao
2023-10-17 17:00 ` [PATCH v3 0/4] SCSI: Fix issues between removing device and error handle Wenchao Hao
2023-10-17 21:41 ` Bart Van Assche
2023-10-18 1:37 ` Wenchao Hao
2023-10-18 13:51 ` Bart Van Assche
2023-10-18 14:40 ` Wenchao Hao
2023-10-18 18:03 ` Bart Van Assche
2023-11-13 16:00 ` Wenchao Hao
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=20231016020314.1269636-1-haowenchao2@huawei.com \
--to=haowenchao2@huawei.com \
--cc=jejb@linux.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=louhongxiang@huawei.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.