diff options
author | Nicholas Bellinger <nab@linux-iscsi.org> | 2014-05-23 00:48:35 -0700 |
---|---|---|
committer | Jiri Slaby <jslaby@suse.cz> | 2014-06-20 17:34:12 +0200 |
commit | a12e3e7bfc80023f8ef4ab17eebeb0e344494036 (patch) | |
tree | a25af429b6b46d7d782a7ebf7e615622e599e668 /drivers/target/target_core_pr.h | |
parent | 3e1b305b53c104d93e1f5d4ac1e682bdf31bb139 (diff) |
iser-target: Add missing target_put_sess_cmd for ImmedateData failure
commit 6cc44a6fb46e1ecc1c28125aa8fa34d317aa9ea7 upstream.
This patch addresses a bug where an early exception for SCSI WRITE
with ImmediateData=Yes was missing the target_put_sess_cmd() call
to drop the extra se_cmd->cmd_kref reference obtained during the
normal iscsit_setup_scsi_cmd() codepath execution.
This bug was manifesting itself during session shutdown within
isert_cq_rx_comp_err() where target_wait_for_sess_cmds() would
end up waiting indefinately for the last se_cmd->cmd_kref put to
occur for the failed SCSI WRITE + ImmediateData descriptors.
This fix follows what traditional iscsi-target code already does
for the same failure case within iscsit_get_immediate_data().
Reported-by: Sagi Grimberg <sagig@dev.mellanox.co.il>
Cc: Sagi Grimberg <sagig@dev.mellanox.co.il>
Cc: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'drivers/target/target_core_pr.h')
0 files changed, 0 insertions, 0 deletions