diff options
Diffstat (limited to 'fs/isofs')
-rw-r--r-- | fs/isofs/inode.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/fs/isofs/inode.c b/fs/isofs/inode.c index 562adabef985..f950059525fc 100644 --- a/fs/isofs/inode.c +++ b/fs/isofs/inode.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/statfs.h> | 20 | #include <linux/statfs.h> |
21 | #include <linux/cdrom.h> | 21 | #include <linux/cdrom.h> |
22 | #include <linux/parser.h> | 22 | #include <linux/parser.h> |
23 | #include <linux/mpage.h> | ||
23 | 24 | ||
24 | #include "isofs.h" | 25 | #include "isofs.h" |
25 | #include "zisofs.h" | 26 | #include "zisofs.h" |
@@ -1148,7 +1149,13 @@ struct buffer_head *isofs_bread(struct inode *inode, sector_t block) | |||
1148 | 1149 | ||
1149 | static int isofs_readpage(struct file *file, struct page *page) | 1150 | static int isofs_readpage(struct file *file, struct page *page) |
1150 | { | 1151 | { |
1151 | return block_read_full_page(page,isofs_get_block); | 1152 | return mpage_readpage(page, isofs_get_block); |
1153 | } | ||
1154 | |||
1155 | static int isofs_readpages(struct file *file, struct address_space *mapping, | ||
1156 | struct list_head *pages, unsigned nr_pages) | ||
1157 | { | ||
1158 | return mpage_readpages(mapping, pages, nr_pages, isofs_get_block); | ||
1152 | } | 1159 | } |
1153 | 1160 | ||
1154 | static sector_t _isofs_bmap(struct address_space *mapping, sector_t block) | 1161 | static sector_t _isofs_bmap(struct address_space *mapping, sector_t block) |
@@ -1158,6 +1165,7 @@ static sector_t _isofs_bmap(struct address_space *mapping, sector_t block) | |||
1158 | 1165 | ||
1159 | static const struct address_space_operations isofs_aops = { | 1166 | static const struct address_space_operations isofs_aops = { |
1160 | .readpage = isofs_readpage, | 1167 | .readpage = isofs_readpage, |
1168 | .readpages = isofs_readpages, | ||
1161 | .bmap = _isofs_bmap | 1169 | .bmap = _isofs_bmap |
1162 | }; | 1170 | }; |
1163 | 1171 | ||