]> Pileus Git - ~andy/linux/blobdiff - block/blk-timeout.c
Merge tag 'jfs-3.11' of git://github.com/kleikamp/linux-shaggy
[~andy/linux] / block / blk-timeout.c
index 6e4744cbfb56b4ca0d99062a0d9b0437c894016d..65f103563969bf32391c7bb3d6f4e4859ed1459a 100644 (file)
@@ -82,9 +82,10 @@ void blk_delete_timer(struct request *req)
 static void blk_rq_timed_out(struct request *req)
 {
        struct request_queue *q = req->q;
-       enum blk_eh_timer_return ret;
+       enum blk_eh_timer_return ret = BLK_EH_RESET_TIMER;
 
-       ret = q->rq_timed_out_fn(req);
+       if (q->rq_timed_out_fn)
+               ret = q->rq_timed_out_fn(req);
        switch (ret) {
        case BLK_EH_HANDLED:
                __blk_complete_request(req);