ext4: Call aops write_begin() and write_end() directly

pagecache_write_begin() and pagecache_write_end() are now trivial
wrappers, so call the aops directly.
Signed-off-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
parent 07a31f72
...@@ -69,6 +69,9 @@ static int pagecache_read(struct inode *inode, void *buf, size_t count, ...@@ -69,6 +69,9 @@ static int pagecache_read(struct inode *inode, void *buf, size_t count,
static int pagecache_write(struct inode *inode, const void *buf, size_t count, static int pagecache_write(struct inode *inode, const void *buf, size_t count,
loff_t pos) loff_t pos)
{ {
struct address_space *mapping = inode->i_mapping;
const struct address_space_operations *aops = mapping->a_ops;
if (pos + count > inode->i_sb->s_maxbytes) if (pos + count > inode->i_sb->s_maxbytes)
return -EFBIG; return -EFBIG;
...@@ -79,15 +82,13 @@ static int pagecache_write(struct inode *inode, const void *buf, size_t count, ...@@ -79,15 +82,13 @@ static int pagecache_write(struct inode *inode, const void *buf, size_t count,
void *fsdata; void *fsdata;
int res; int res;
res = pagecache_write_begin(NULL, inode->i_mapping, pos, n, 0, res = aops->write_begin(NULL, mapping, pos, n, &page, &fsdata);
&page, &fsdata);
if (res) if (res)
return res; return res;
memcpy_to_page(page, offset_in_page(pos), buf, n); memcpy_to_page(page, offset_in_page(pos), buf, n);
res = pagecache_write_end(NULL, inode->i_mapping, pos, n, n, res = aops->write_end(NULL, mapping, pos, n, n, page, fsdata);
page, fsdata);
if (res < 0) if (res < 0)
return res; return res;
if (res != n) if (res != n)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment