iscsi-target: Fix iscsit_get_tpg_from_np tpg_state bug
authorNicholas Bellinger <nab@linux-iscsi.org>
Wed, 26 Feb 2014 11:09:41 +0000 (03:09 -0800)
committerJiri Slaby <jslaby@suse.cz>
Sat, 22 Mar 2014 21:01:59 +0000 (22:01 +0100)
commit a2a99cea5ec7c1e47825559f0e75a4efbcf8aee3 upstream.

This patch fixes a bug in iscsit_get_tpg_from_np() where the
tpg->tpg_state sanity check was looking for TPG_STATE_FREE,
instead of != TPG_STATE_ACTIVE.

The latter is expected during a normal TPG shutdown once the
tpg_state goes into TPG_STATE_INACTIVE in order to reject any
new incoming login attempts.

Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/target/iscsi/iscsi_target_tpg.c

index 4faeb47fa5e11377408c71c407a4f8c5afffa294..3cf77c0b76b4c7e122cf3f45904a9607427cbacc 100644 (file)
@@ -137,7 +137,7 @@ struct iscsi_portal_group *iscsit_get_tpg_from_np(
        list_for_each_entry(tpg, &tiqn->tiqn_tpg_list, tpg_list) {
 
                spin_lock(&tpg->tpg_state_lock);
-               if (tpg->tpg_state == TPG_STATE_FREE) {
+               if (tpg->tpg_state != TPG_STATE_ACTIVE) {
                        spin_unlock(&tpg->tpg_state_lock);
                        continue;
                }