Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[sfrench/cifs-2.6.git] / drivers / scsi / csiostor / csio_mb.c
index 7e74ec8592283407fd65491735fe17e918701d81..931b1d8f9f3ee713fcfd31ea46b481bcf16ee5a4 100644 (file)
@@ -1647,13 +1647,10 @@ csio_mb_cancel_all(struct csio_hw *hw, struct list_head *cbfn_q)
  */
 int
 csio_mbm_init(struct csio_mbm *mbm, struct csio_hw *hw,
-             void (*timer_fn)(uintptr_t))
+             void (*timer_fn)(struct timer_list *))
 {
-       struct timer_list *timer = &mbm->timer;
-
-       init_timer(timer);
-       timer->function = timer_fn;
-       timer->data = (unsigned long)hw;
+       mbm->hw = hw;
+       timer_setup(&mbm->timer, timer_fn, 0);
 
        INIT_LIST_HEAD(&mbm->req_q);
        INIT_LIST_HEAD(&mbm->cbfn_q);