]> Git Repo - linux.git/commitdiff
ext4: Call aops write_begin() and write_end() directly
authorMatthew Wilcox (Oracle) <[email protected]>
Thu, 3 Mar 2022 18:43:29 +0000 (13:43 -0500)
committerMatthew Wilcox (Oracle) <[email protected]>
Sun, 8 May 2022 18:45:56 +0000 (14:45 -0400)
pagecache_write_begin() and pagecache_write_end() are now trivial
wrappers, so call the aops directly.

Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>
Reviewed-by: Christoph Hellwig <[email protected]>
fs/ext4/verity.c

index eacbd489e3bf176822ce6b5b6ee10ada3f274f91..b051d19b5c8a04cf313b440782c396f482140011 100644 (file)
@@ -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,
                           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)
                return -EFBIG;
 
@@ -79,15 +82,13 @@ static int pagecache_write(struct inode *inode, const void *buf, size_t count,
                void *fsdata;
                int res;
 
-               res = pagecache_write_begin(NULL, inode->i_mapping, pos, n, 0,
-                                           &page, &fsdata);
+               res = aops->write_begin(NULL, mapping, pos, n, &page, &fsdata);
                if (res)
                        return res;
 
                memcpy_to_page(page, offset_in_page(pos), buf, n);
 
-               res = pagecache_write_end(NULL, inode->i_mapping, pos, n, n,
-                                         page, fsdata);
+               res = aops->write_end(NULL, mapping, pos, n, n, page, fsdata);
                if (res < 0)
                        return res;
                if (res != n)
This page took 0.050877 seconds and 4 git commands to generate.