]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/target/target_core_tpg.c
target: Fix NULL dereference during LUN lookup + active I/O shutdown
[karo-tx-linux.git] / drivers / target / target_core_tpg.c
index d99752c6cd602b1bb4cd838b7987ef9824ded990..2744251178adb898e7c6df68d01e6063d6091705 100644 (file)
@@ -445,7 +445,7 @@ static void core_tpg_lun_ref_release(struct percpu_ref *ref)
 {
        struct se_lun *lun = container_of(ref, struct se_lun, lun_ref);
 
-       complete(&lun->lun_ref_comp);
+       complete(&lun->lun_shutdown_comp);
 }
 
 int core_tpg_register(
@@ -571,6 +571,7 @@ struct se_lun *core_tpg_alloc_lun(
        lun->lun_link_magic = SE_LUN_LINK_MAGIC;
        atomic_set(&lun->lun_acl_count, 0);
        init_completion(&lun->lun_ref_comp);
+       init_completion(&lun->lun_shutdown_comp);
        INIT_LIST_HEAD(&lun->lun_deve_list);
        INIT_LIST_HEAD(&lun->lun_dev_link);
        atomic_set(&lun->lun_tg_pt_secondary_offline, 0);