|
@@ -863,9 +863,9 @@ static void blk_queue_usage_counter_release(struct percpu_ref *ref)
|
|
wake_up_all(&q->mq_freeze_wq);
|
|
wake_up_all(&q->mq_freeze_wq);
|
|
}
|
|
}
|
|
|
|
|
|
-static void blk_rq_timed_out_timer(unsigned long data)
|
|
|
|
|
|
+static void blk_rq_timed_out_timer(struct timer_list *t)
|
|
{
|
|
{
|
|
- struct request_queue *q = (struct request_queue *)data;
|
|
|
|
|
|
+ struct request_queue *q = from_timer(q, t, timeout);
|
|
|
|
|
|
kblockd_schedule_work(&q->timeout_work);
|
|
kblockd_schedule_work(&q->timeout_work);
|
|
}
|
|
}
|
|
@@ -901,9 +901,9 @@ struct request_queue *blk_alloc_queue_node(gfp_t gfp_mask, int node_id)
|
|
q->backing_dev_info->name = "block";
|
|
q->backing_dev_info->name = "block";
|
|
q->node = node_id;
|
|
q->node = node_id;
|
|
|
|
|
|
- setup_timer(&q->backing_dev_info->laptop_mode_wb_timer,
|
|
|
|
- laptop_mode_timer_fn, (unsigned long) q);
|
|
|
|
- setup_timer(&q->timeout, blk_rq_timed_out_timer, (unsigned long) q);
|
|
|
|
|
|
+ timer_setup(&q->backing_dev_info->laptop_mode_wb_timer,
|
|
|
|
+ laptop_mode_timer_fn, 0);
|
|
|
|
+ timer_setup(&q->timeout, blk_rq_timed_out_timer, 0);
|
|
INIT_WORK(&q->timeout_work, NULL);
|
|
INIT_WORK(&q->timeout_work, NULL);
|
|
INIT_LIST_HEAD(&q->queue_head);
|
|
INIT_LIST_HEAD(&q->queue_head);
|
|
INIT_LIST_HEAD(&q->timeout_list);
|
|
INIT_LIST_HEAD(&q->timeout_list);
|