summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJanne Kalliomäki <janne@tuxera.com>2012-06-17 21:05:24 (GMT)
committerLinus Torvalds <torvalds@linux-foundation.org>2012-06-17 21:39:45 (GMT)
commita6dc8c04218eb752ff79cdc24a995cf51866caed (patch)
treea7ab24f567b527ddd2396d713379545d04d332fa
parent485802a6c524e62b5924849dd727ddbb1497cc71 (diff)
downloadlinux-fsl-qoriq-a6dc8c04218eb752ff79cdc24a995cf51866caed.tar.xz
hfsplus: fix overflow in sector calculations in hfsplus_submit_bio
The variable io_size was unsigned int, which caused the wrong sector number to be calculated after aligning it. This then caused mount to fail with big volumes, as backup volume header information was searched from a wrong sector. Signed-off-by: Janne Kalliomäki <janne@tuxera.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--fs/hfsplus/wrapper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/hfsplus/wrapper.c b/fs/hfsplus/wrapper.c
index 7daf4b8..90effcc 100644
--- a/fs/hfsplus/wrapper.c
+++ b/fs/hfsplus/wrapper.c
@@ -56,7 +56,7 @@ int hfsplus_submit_bio(struct super_block *sb, sector_t sector,
DECLARE_COMPLETION_ONSTACK(wait);
struct bio *bio;
int ret = 0;
- unsigned int io_size;
+ u64 io_size;
loff_t start;
int offset;