Merge remote-tracking branches 'regulator/fix/max1586', 'regulator/fix/max77686'...
[sfrench/cifs-2.6.git] / drivers / target / target_core_tmr.c
index f7cd95e8111a7e496cf198c9f6a7ec18f854942b..fa5e157db47be242f855a9c1a209ea9e08e60c3d 100644 (file)
@@ -64,21 +64,17 @@ int core_tmr_alloc_req(
 }
 EXPORT_SYMBOL(core_tmr_alloc_req);
 
-void core_tmr_release_req(
-       struct se_tmr_req *tmr)
+void core_tmr_release_req(struct se_tmr_req *tmr)
 {
        struct se_device *dev = tmr->tmr_dev;
        unsigned long flags;
 
-       if (!dev) {
-               kfree(tmr);
-               return;
+       if (dev) {
+               spin_lock_irqsave(&dev->se_tmr_lock, flags);
+               list_del(&tmr->tmr_list);
+               spin_unlock_irqrestore(&dev->se_tmr_lock, flags);
        }
 
-       spin_lock_irqsave(&dev->se_tmr_lock, flags);
-       list_del(&tmr->tmr_list);
-       spin_unlock_irqrestore(&dev->se_tmr_lock, flags);
-
        kfree(tmr);
 }
 
@@ -90,9 +86,8 @@ static void core_tmr_handle_tas_abort(
        bool remove = true;
        /*
         * TASK ABORTED status (TAS) bit support
-       */
-       if ((tmr_nacl &&
-            (tmr_nacl != cmd->se_sess->se_node_acl)) && tas) {
+        */
+       if ((tmr_nacl && (tmr_nacl != cmd->se_sess->se_node_acl)) && tas) {
                remove = false;
                transport_send_task_abort(cmd);
        }
@@ -120,13 +115,12 @@ void core_tmr_abort_task(
        struct se_tmr_req *tmr,
        struct se_session *se_sess)
 {
-       struct se_cmd *se_cmd, *tmp_cmd;
+       struct se_cmd *se_cmd;
        unsigned long flags;
        int ref_tag;
 
        spin_lock_irqsave(&se_sess->sess_cmd_lock, flags);
-       list_for_each_entry_safe(se_cmd, tmp_cmd,
-                       &se_sess->sess_cmd_list, se_cmd_list) {
+       list_for_each_entry(se_cmd, &se_sess->sess_cmd_list, se_cmd_list) {
 
                if (dev != se_cmd->se_dev)
                        continue;