On alpha, USER_HZ may be higher than HZ. This results in integer overflow
in MULDIV.

Signed-off-by: Mikulas Patocka <[email protected]>
Cc: [email protected]

---
 drivers/scsi/sg.c |    2 ++
 1 file changed, 2 insertions(+)

Index: linux-3.13/drivers/scsi/sg.c
===================================================================
--- linux-3.13.orig/drivers/scsi/sg.c   2014-01-20 21:44:02.000000000 +0100
+++ linux-3.13/drivers/scsi/sg.c        2014-01-24 17:28:02.000000000 +0100
@@ -856,8 +856,10 @@ sg_ioctl(struct file *filp, unsigned int
                        return result;
                if (val < 0)
                        return -EIO;
+#if USER_HZ < HZ
                if (val >= MULDIV (INT_MAX, USER_HZ, HZ))
                    val = MULDIV (INT_MAX, USER_HZ, HZ);
+#endif
                sfp->timeout_user = val;
                sfp->timeout = MULDIV (val, HZ, USER_HZ);
 
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to