Commands can be aborted by other transports, so cmnd_rx_continue() should check scst_cmd_aborted().

git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1439 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Vladislav Bolkhovitin
2010-01-08 16:19:31 +00:00
parent c6e5febf06
commit e6ac85312b

View File

@@ -1648,7 +1648,10 @@ int cmnd_rx_continue(struct iscsi_cmnd *req)
/* Check prelim_compl_flags here to save R2Ts */
if (unlikely(scst_cmd_completed(scst_cmd) ||
unlikely(req->prelim_compl_flags != 0))) {
unlikely(req->prelim_compl_flags != 0) ||
unlikely(scst_cmd_aborted(scst_cmd)))) {
if (scst_cmd_aborted(scst_cmd))
set_bit(ISCSI_CMD_ABORTED, &req->prelim_compl_flags);
res = iscsi_preliminary_complete(req, req, true);
goto trace;
}