]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/target/target_core_device.c
target: fix use after free in target_report_luns
[karo-tx-linux.git] / drivers / target / target_core_device.c
index 19f8aca08098aefb091ed696f02d3631735cfe78..097178b83b3a5bc20beb525b14dd5c2627f67450 100644 (file)
@@ -696,12 +696,12 @@ int target_report_luns(struct se_task *se_task)
         * See SPC3 r07, page 159.
         */
 done:
-       transport_kunmap_data_sg(se_cmd);
        lun_count *= 8;
        buf[0] = ((lun_count >> 24) & 0xff);
        buf[1] = ((lun_count >> 16) & 0xff);
        buf[2] = ((lun_count >> 8) & 0xff);
        buf[3] = (lun_count & 0xff);
+       transport_kunmap_data_sg(se_cmd);
 
        se_task->task_scsi_status = GOOD;
        transport_complete_task(se_task, 1);