aboutsummaryrefslogtreecommitdiff
path: root/drivers/target/iscsi/iscsi_target.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-05-21 18:03:14 +0900
committerLinus Torvalds <torvalds@linux-foundation.org>2014-05-21 18:03:14 +0900
commita7aa96a92eff3c4b2c7df8c8535691a5a487207d (patch)
treefca01e6d923d59c0b438f7b8296a03e01a30c090 /drivers/target/iscsi/iscsi_target.c
parentb14002761c01dcd2e416ad6d922bd0acf21e4a9d (diff)
parent1e1110c43b1cda9fe77fc4a04835e460550e6b3c (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending
Pull scsi target fixes from Nicholas Bellinger: "This series include: - Close race between iser-target network portal shutdown + accepting new connection logins (sagi) - Fix free-after-use regression in tcm_fc post conversion to percpu-ida pre-allocation (nab) - Explicitly disable Immediate + Unsolicited Data for iser-target connections when T10-PI is enabled (sagi + nab) - Allow pi_prot_type + emulate_write_cache attributes to be set to zero regardless of backend support (andy) - memory leak fix (mikulas)" * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: target: fix memory leak on XCOPY target: Don't allow setting WC emulation if device doesn't support iscsi-target: Disable Immediate + Unsolicited Data with ISER Protection tcm_fc: Fix free-after-use regression in ft_free_cmd iscsi-target: Change BUG_ON to REJECT in iscsit_process_nop_out Target/iscsi,iser: Avoid accepting transport connections during stop stage Target/iser: Fix iscsit_accept_np and rdma_cm racy flow Target/iser: Fix wrong connection requests list addition target: Allow non-supporting backends to set pi_prot_type to 0
Diffstat (limited to 'drivers/target/iscsi/iscsi_target.c')
-rw-r--r--drivers/target/iscsi/iscsi_target.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/target/iscsi/iscsi_target.c b/drivers/target/iscsi/iscsi_target.c
index 78cab13bbb1b..46588c85d39b 100644
--- a/drivers/target/iscsi/iscsi_target.c
+++ b/drivers/target/iscsi/iscsi_target.c
@@ -1593,7 +1593,9 @@ int iscsit_process_nop_out(struct iscsi_conn *conn, struct iscsi_cmd *cmd,
* Initiator is expecting a NopIN ping reply..
*/
if (hdr->itt != RESERVED_ITT) {
- BUG_ON(!cmd);
+ if (!cmd)
+ return iscsit_add_reject(conn, ISCSI_REASON_PROTOCOL_ERROR,
+ (unsigned char *)hdr);
spin_lock_bh(&conn->cmd_lock);
list_add_tail(&cmd->i_conn_node, &conn->conn_cmd_list);