git: 15fe13c887d6 - stable/12 - Move XPT_IMMEDIATE_NOTIFY handling out of periph lock.
Alexander Motin
mav at FreeBSD.org
Mon Mar 15 03:01:20 UTC 2021
The branch stable/12 has been updated by mav:
URL: https://cgit.FreeBSD.org/src/commit/?id=15fe13c887d6133b4b6d91c780a91c67fdb6b063
commit 15fe13c887d6133b4b6d91c780a91c67fdb6b063
Author: Alexander Motin <mav at FreeBSD.org>
AuthorDate: 2021-02-18 21:22:01 +0000
Commit: Alexander Motin <mav at FreeBSD.org>
CommitDate: 2021-03-15 02:41:53 +0000
Move XPT_IMMEDIATE_NOTIFY handling out of periph lock.
It is a rare, but still better to not have lock dependencies.
MFC after: 1 month
(cherry picked from commit c67a2909a629db138227993e1093e66bb6c00af5)
---
sys/cam/ctl/scsi_ctl.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/sys/cam/ctl/scsi_ctl.c b/sys/cam/ctl/scsi_ctl.c
index e22b3a95095f..0bbbe3cb6e2a 100644
--- a/sys/cam/ctl/scsi_ctl.c
+++ b/sys/cam/ctl/scsi_ctl.c
@@ -1493,6 +1493,7 @@ ctlfedone(struct cam_periph *periph, union ccb *done_ccb)
ctlfe_free_ccb(periph, done_ccb);
goto out;
}
+ mtx_unlock(mtx);
if (send_ctl_io != 0) {
ctl_queue(io);
} else {
@@ -1500,7 +1501,7 @@ ctlfedone(struct cam_periph *periph, union ccb *done_ccb)
done_ccb->ccb_h.func_code = XPT_NOTIFY_ACKNOWLEDGE;
xpt_action(done_ccb);
}
- break;
+ return;
}
case XPT_NOTIFY_ACKNOWLEDGE:
/* Queue this back down to the SIM as an immediate notify. */
More information about the dev-commits-src-branches
mailing list