--- /dev/null
+Subject: block: add comment in blk_rq_timed_out() about why next can not be 0
+From: Jens Axboe <jens.axboe@oracle.com>
+Date: Mon Dec 29 08:28:42 2008 +0100:
+Git: 65d3618ccfe686e8d7b3f01a838d0578182406df
+References: bnc#464155
+
+Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
+Signed-off-by: Hannes Reinecke <hare@suse.de>
+
+---
+ block/blk-timeout.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+--- a/block/blk-timeout.c
++++ b/block/blk-timeout.c
+@@ -69,7 +69,12 @@ void blk_rq_timed_out_timer(unsigned lon
+ }
+ }
+
+- 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);