diff options
author | OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> | 2006-01-08 04:02:10 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-08 23:13:46 -0500 |
commit | a5425d2927a6a771f9ae8767b6bfb3c09225bcdd (patch) | |
tree | 52a68076b8cb684d9f094c5518749fa9ec2d1fd3 /fs | |
parent | 83b7c996dc859c7b53f94d46ee5c5929cc0399e2 (diff) |
[PATCH] fat: add the read/writepages()
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/fat/inode.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/fs/fat/inode.c b/fs/fat/inode.c index 897312616b0a..f502c6b8cb49 100644 --- a/fs/fat/inode.c +++ b/fs/fat/inode.c | |||
@@ -18,6 +18,7 @@ | |||
18 | #include <linux/seq_file.h> | 18 | #include <linux/seq_file.h> |
19 | #include <linux/msdos_fs.h> | 19 | #include <linux/msdos_fs.h> |
20 | #include <linux/pagemap.h> | 20 | #include <linux/pagemap.h> |
21 | #include <linux/mpage.h> | ||
21 | #include <linux/buffer_head.h> | 22 | #include <linux/buffer_head.h> |
22 | #include <linux/mount.h> | 23 | #include <linux/mount.h> |
23 | #include <linux/vfs.h> | 24 | #include <linux/vfs.h> |
@@ -90,9 +91,21 @@ static int fat_writepage(struct page *page, struct writeback_control *wbc) | |||
90 | return block_write_full_page(page, fat_get_block, wbc); | 91 | return block_write_full_page(page, fat_get_block, wbc); |
91 | } | 92 | } |
92 | 93 | ||
94 | static int fat_writepages(struct address_space *mapping, | ||
95 | struct writeback_control *wbc) | ||
96 | { | ||
97 | return mpage_writepages(mapping, wbc, fat_get_block); | ||
98 | } | ||
99 | |||
93 | static int fat_readpage(struct file *file, struct page *page) | 100 | static int fat_readpage(struct file *file, struct page *page) |
94 | { | 101 | { |
95 | return block_read_full_page(page, fat_get_block); | 102 | return mpage_readpage(page, fat_get_block); |
103 | } | ||
104 | |||
105 | static int fat_readpages(struct file *file, struct address_space *mapping, | ||
106 | struct list_head *pages, unsigned nr_pages) | ||
107 | { | ||
108 | return mpage_readpages(mapping, pages, nr_pages, fat_get_block); | ||
96 | } | 109 | } |
97 | 110 | ||
98 | static int fat_prepare_write(struct file *file, struct page *page, | 111 | static int fat_prepare_write(struct file *file, struct page *page, |
@@ -122,7 +135,9 @@ static sector_t _fat_bmap(struct address_space *mapping, sector_t block) | |||
122 | 135 | ||
123 | static struct address_space_operations fat_aops = { | 136 | static struct address_space_operations fat_aops = { |
124 | .readpage = fat_readpage, | 137 | .readpage = fat_readpage, |
138 | .readpages = fat_readpages, | ||
125 | .writepage = fat_writepage, | 139 | .writepage = fat_writepage, |
140 | .writepages = fat_writepages, | ||
126 | .sync_page = block_sync_page, | 141 | .sync_page = block_sync_page, |
127 | .prepare_write = fat_prepare_write, | 142 | .prepare_write = fat_prepare_write, |
128 | .commit_write = fat_commit_write, | 143 | .commit_write = fat_commit_write, |