[SCSI] sd: Do not call do_div() with a 64-bit divisor
authorGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 4 Nov 2013 09:21:05 +0000 (10:21 +0100)
committerJames Bottomley <JBottomley@Parallels.com>
Thu, 19 Dec 2013 15:39:03 +0000 (07:39 -0800)
commitef80d1e18b014af08741cf688e3fdda1fb71363f
tree6dc63b9742606bd600dffed96c78af5036a59a4d
parentb28d108b7f9f3b51574edbf90505c467f1066c6e
[SCSI] sd: Do not call do_div() with a 64-bit divisor

do_div() is meant for divisions of 64-bit number by 32-bit numbers.
Passing 64-bit divisor types caused issues in the past on 32-bit platforms,
cfr. commit ea077b1b96e073eac5c3c5590529e964767fc5f7 ("m68k: Truncate base
in do_div()").

As scsi_device.sector_size is unsigned (int), factor should be unsigned
int, too.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/sd.c