block: blk-timeout.c possible mishandling of jiffies wrap?

From: Richard Kennedy
Date: Sun Mar 07 2010 - 12:48:07 EST


Hi Jens,

In blk_rq_timed_out_timer() in blk-timeout.c the comment at line 129
says that the request deadline can never be zero as that gets fixed in
blk_add_timer.

However commit 7838c15b8dd18e78a523513749e5b54bda07b0cb
removed the line that bumped deadline if zero.

So now AFAICT there's nothing to prevent deadline being zero, and
blk_rq_timed_out_timer may not always do the right thing when jiffies is
about to wrap.

There was a next_set flag in blk_rq_timed_out_timer but that's been
removed too.

Do you have any preferred fix? A next_set flag or a deadline bump or
something else?

regards
Richard


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/