From e99d48a62bfc6e64548e0d5085240c5024eca471 Mon Sep 17 00:00:00 2001 From: Christoph Hellwig Date: Mon, 17 Oct 2011 13:56:47 -0400 Subject: [PATCH] target: remove TF_TIMER_STOP TF_TIMER_STOP is useless as it only helps to mitigate a tiny race during deleting the timer. But given that we have cleared TF_ACTIVE at this point we already have another mitigation a few lines down the function. Signed-off-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger --- drivers/target/target_core_transport.c | 6 ------ include/target/target_core_base.h | 1 - 2 files changed, 7 deletions(-) diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c index 6dab8198ace8..a36f4451e5db 100644 --- a/drivers/target/target_core_transport.c +++ b/drivers/target/target_core_transport.c @@ -2066,10 +2066,6 @@ static void transport_task_timeout_handler(unsigned long data) pr_debug("transport task timeout fired! task: %p cmd: %p\n", task, cmd); spin_lock_irqsave(&cmd->t_state_lock, flags); - if (task->task_flags & TF_TIMER_STOP) { - spin_unlock_irqrestore(&cmd->t_state_lock, flags); - return; - } task->task_flags &= ~TF_TIMER_RUNNING; /* @@ -2153,14 +2149,12 @@ void __transport_stop_task_timer(struct se_task *task, unsigned long *flags) if (!(task->task_flags & TF_TIMER_RUNNING)) return; - task->task_flags |= TF_TIMER_STOP; spin_unlock_irqrestore(&cmd->t_state_lock, *flags); del_timer_sync(&task->task_timer); spin_lock_irqsave(&cmd->t_state_lock, *flags); task->task_flags &= ~TF_TIMER_RUNNING; - task->task_flags &= ~TF_TIMER_STOP; } static void transport_stop_all_task_timers(struct se_cmd *cmd) diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h index 77b3de846340..8f02a65de75f 100644 --- a/include/target/target_core_base.h +++ b/include/target/target_core_base.h @@ -78,7 +78,6 @@ enum se_task_flags { TF_TIMEOUT = (1 << 2), TF_REQUEST_STOP = (1 << 3), TF_TIMER_RUNNING = (1 << 4), - TF_TIMER_STOP = (1 << 5), }; /* Special transport agnostic struct se_cmd->t_states */