]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - drivers/s390/cio/device_fsm.c
s390/cio: Convert timers to use timer_setup()
[mirror_ubuntu-bionic-kernel.git] / drivers / s390 / cio / device_fsm.c
index f98ea674c3d8054390a5486802fedd482f0dbe16..dd7d79d30edc440662a02432a3ad3ce822503225 100644 (file)
@@ -91,12 +91,12 @@ static void ccw_timeout_log(struct ccw_device *cdev)
 /*
  * Timeout function. It just triggers a DEV_EVENT_TIMEOUT.
  */
-static void
-ccw_device_timeout(unsigned long data)
+void
+ccw_device_timeout(struct timer_list *t)
 {
-       struct ccw_device *cdev;
+       struct ccw_device_private *priv = from_timer(priv, t, timer);
+       struct ccw_device *cdev = priv->cdev;
 
-       cdev = (struct ccw_device *) data;
        spin_lock_irq(cdev->ccwlock);
        if (timeout_log_enabled)
                ccw_timeout_log(cdev);
@@ -118,8 +118,6 @@ ccw_device_set_timeout(struct ccw_device *cdev, int expires)
                if (mod_timer(&cdev->private->timer, jiffies + expires))
                        return;
        }
-       cdev->private->timer.function = ccw_device_timeout;
-       cdev->private->timer.data = (unsigned long) cdev;
        cdev->private->timer.expires = jiffies + expires;
        add_timer(&cdev->private->timer);
 }