iscsi target: fix oops when adding reject pdu
authorMike Christie <michaelc@cs.wisc.edu>
Fri, 10 Apr 2015 07:47:27 +0000 (02:47 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Apr 2015 08:10:25 +0000 (10:10 +0200)
commitcb32abbc39b14b4c18badf5bcd968a4f497fe762
treeb916f0b8e75bdea7c4619b19b1da7c0454fa4c1b
parent2cdb954e809a33c13ecb54bf56bee1df30e368f2
iscsi target: fix oops when adding reject pdu

commit b815fc12d4dd2b5586184fb4f867caff05a810d4 upstream.

This fixes a oops due to a double list add when adding a reject PDU for
iscsit_allocate_iovecs allocation failures. The cmd has already been
added to the conn_cmd_list in iscsit_setup_scsi_cmd, so this has us call
iscsit_reject_cmd.

Note that for ERL0 the reject PDU is not actually sent, so this patch
is not completely tested. Just verified we do not oops. The problem is the
add reject functions return -1 which is returned all the way up to
iscsi_target_rx_thread which for ERL0 will drop the connection.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/target/iscsi/iscsi_target.c