target: Send UA upon LUN RESET tmr completion
authorHannes Reinecke <hare@suse.de>
Thu, 11 Jun 2015 08:01:28 +0000 (10:01 +0200)
committerNicholas Bellinger <nab@linux-iscsi.org>
Tue, 23 Jun 2015 07:27:39 +0000 (00:27 -0700)
SAM mandates that an BUS DEVICE RESET FUNCTION OCCURRED
UA needs to be send after a LUN RESET tmr has completed.

(Update to use target_ua_allocate_lun - hch)

Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_transport.c

index 0364534..e5088c0 100644 (file)
@@ -2983,6 +2983,11 @@ static void target_tmr_work(struct work_struct *work)
                ret = core_tmr_lun_reset(dev, tmr, NULL, NULL);
                tmr->response = (!ret) ? TMR_FUNCTION_COMPLETE :
                                         TMR_FUNCTION_REJECTED;
+               if (tmr->response == TMR_FUNCTION_COMPLETE) {
+                       target_ua_allocate_lun(cmd->se_sess->se_node_acl,
+                                              cmd->orig_fe_lun, 0x29,
+                                              ASCQ_29H_BUS_DEVICE_RESET_FUNCTION_OCCURRED);
+               }
                break;
        case TMR_TARGET_WARM_RESET:
                tmr->response = TMR_FUNCTION_REJECTED;