|
@@ -772,8 +772,10 @@ void iscsit_free_cmd(struct iscsi_cmd *cmd, bool shutdown)
|
|
__iscsit_free_cmd(cmd, shutdown);
|
|
__iscsit_free_cmd(cmd, shutdown);
|
|
if (se_cmd) {
|
|
if (se_cmd) {
|
|
rc = transport_generic_free_cmd(se_cmd, shutdown);
|
|
rc = transport_generic_free_cmd(se_cmd, shutdown);
|
|
- if (!rc && shutdown && se_cmd->se_sess)
|
|
|
|
|
|
+ if (!rc && shutdown && se_cmd->se_sess) {
|
|
|
|
+ __iscsit_free_cmd(cmd, shutdown);
|
|
target_put_sess_cmd(se_cmd);
|
|
target_put_sess_cmd(se_cmd);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
iscsit_release_cmd(cmd);
|
|
iscsit_release_cmd(cmd);
|
|
}
|
|
}
|