s390/tape: fix timer initialization in tape_std_assign()
authorSven Schnelle <svens@linux.ibm.com>
Tue, 2 Nov 2021 09:55:30 +0000 (10:55 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Nov 2021 18:17:17 +0000 (19:17 +0100)
commit 213fca9e23b59581c573d558aa477556f00b8198 upstream.

commit 9c6c273aa424 ("timer: Remove init_timer_on_stack() in favor
of timer_setup_on_stack()") changed the timer setup from
init_timer_on_stack(() to timer_setup(), but missed to change the
mod_timer() call. And while at it, use msecs_to_jiffies() instead
of the open coded timeout calculation.

Cc: stable@vger.kernel.org
Fixes: 9c6c273aa424 ("timer: Remove init_timer_on_stack() in favor of timer_setup_on_stack()")
Signed-off-by: Sven Schnelle <svens@linux.ibm.com>
Reviewed-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/s390/char/tape_std.c

index 1f5fab6..f7e75d9 100644 (file)
@@ -53,7 +53,6 @@ int
 tape_std_assign(struct tape_device *device)
 {
        int                  rc;
-       struct timer_list    timeout;
        struct tape_request *request;
 
        request = tape_alloc_request(2, 11);
@@ -70,7 +69,7 @@ tape_std_assign(struct tape_device *device)
         * So we set up a timeout for this call.
         */
        timer_setup(&request->timer, tape_std_assign_timeout, 0);
-       mod_timer(&timeout, jiffies + 2 * HZ);
+       mod_timer(&request->timer, jiffies + msecs_to_jiffies(2000));
 
        rc = tape_do_io_interruptible(device, request);