summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2008-10-30 08:53:02 +0100
committerJens Axboe <jens.axboe@oracle.com>2008-12-29 08:28:42 +0100
commit65d3618ccfe686e8d7b3f01a838d0578182406df (patch)
tree0a53a7d3649eb82a8e2af2c9f4e8de2d9b1b6616 /block
parent565e411d764eeda006738dfadbccca79d48381e1 (diff)
downloadlinux-65d3618ccfe686e8d7b3f01a838d0578182406df.tar.bz2
block: add comment in blk_rq_timed_out() about why next can not be 0
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'block')
-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)
}
}
- if (next_set && !list_empty(&q->timeout_list))
+ /*
+ * next can never be 0 here with the list non-empty, since we always
+ * bump ->deadline to 1 so we can detect if the timer was ever added
+ * or not. See comment in blk_add_timer()
+ */
+ if (next)
mod_timer(&q->timeout, round_jiffies_up(next));
spin_unlock_irqrestore(q->queue_lock, flags);