From 4db96b71e3caea5bb39053d57683129e0682c66f Mon Sep 17 00:00:00 2001 From: Akinobu Mita Date: Thu, 9 Oct 2014 15:26:55 -0700 Subject: vfs: guard end of device for mpage interface Add guard_bio_eod() check for mpage code in order to allow us to do IO even on the odd last sectors of a device, even if the block size is some multiple of the physical sector size. Using mpage_readpages() for block device requires this guard check. Signed-off-by: Akinobu Mita Cc: Jens Axboe Cc: Alexander Viro Cc: Jeff Moyer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- fs/mpage.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'fs/mpage.c') diff --git a/fs/mpage.c b/fs/mpage.c index 5f9ed622274f..3e79220babac 100644 --- a/fs/mpage.c +++ b/fs/mpage.c @@ -28,6 +28,7 @@ #include #include #include +#include "internal.h" /* * I/O completion handler for multipage BIOs. @@ -57,6 +58,7 @@ static void mpage_end_io(struct bio *bio, int err) static struct bio *mpage_bio_submit(int rw, struct bio *bio) { bio->bi_end_io = mpage_end_io; + guard_bio_eod(rw, bio); submit_bio(rw, bio); return NULL; } -- cgit v1.2.3