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
This commit is contained in:
Alexander Motin 2021-02-18 16:22:01 -05:00
parent 0ee0dbfb0d
commit c67a2909a6

View File

@ -1491,6 +1491,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 {
@ -1498,7 +1499,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. */