aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--block/blk-timeout.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/block/blk-timeout.c b/block/blk-timeout.c
index 116bbf394fb5..99c3efc706b7 100644
--- a/block/blk-timeout.c
+++ b/block/blk-timeout.c
@@ -132,7 +132,12 @@ void blk_rq_timed_out_timer(unsigned long data)
132 } 132 }
133 } 133 }
134 134
135 if (next_set && !list_empty(&q->timeout_list)) 135 /*
136 * next can never be 0 here with the list non-empty, since we always
137 * bump ->deadline to 1 so we can detect if the timer was ever added
138 * or not. See comment in blk_add_timer()
139 */
140 if (next)
136 mod_timer(&q->timeout, round_jiffies_up(next)); 141 mod_timer(&q->timeout, round_jiffies_up(next));
137 142
138 spin_unlock_irqrestore(q->queue_lock, flags); 143 spin_unlock_irqrestore(q->queue_lock, flags);