summaryrefslogtreecommitdiffstats
path: root/fs/udf/symlink.c
diff options
context:
space:
mode:
authorMatthew Wilcox (Oracle) <willy@infradead.org>2024-04-17 16:04:11 +0100
committerJan Kara <jack@suse.cz>2024-04-23 15:37:02 +0200
commit2f1c1bd7b18768377ff4a84974d77e6e8b371a67 (patch)
treecea262676383480f0de165205c0b229fac1b0030 /fs/udf/symlink.c
parentd257d924a3fc6fe26594fba221c8be62f043b8d0 (diff)
downloadlinux-stable-2f1c1bd7b18768377ff4a84974d77e6e8b371a67.tar.gz
linux-stable-2f1c1bd7b18768377ff4a84974d77e6e8b371a67.tar.bz2
linux-stable-2f1c1bd7b18768377ff4a84974d77e6e8b371a67.zip
udf: Convert udf_symlink_getattr() to use a folio
We're getting this from the page cache, so it's definitely a folio. Saves a call to compound_head() hidden in put_page(). Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Jan Kara <jack@suse.cz> Message-Id: <20240417150416.752929-6-willy@infradead.org>
Diffstat (limited to 'fs/udf/symlink.c')
-rw-r--r--fs/udf/symlink.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/fs/udf/symlink.c b/fs/udf/symlink.c
index 0105e7e2ba3d..fe03745d09b1 100644
--- a/fs/udf/symlink.c
+++ b/fs/udf/symlink.c
@@ -137,12 +137,12 @@ static int udf_symlink_getattr(struct mnt_idmap *idmap,
{
struct dentry *dentry = path->dentry;
struct inode *inode = d_backing_inode(dentry);
- struct page *page;
+ struct folio *folio;
generic_fillattr(&nop_mnt_idmap, request_mask, inode, stat);
- page = read_mapping_page(inode->i_mapping, 0, NULL);
- if (IS_ERR(page))
- return PTR_ERR(page);
+ folio = read_mapping_folio(inode->i_mapping, 0, NULL);
+ if (IS_ERR(folio))
+ return PTR_ERR(folio);
/*
* UDF uses non-trivial encoding of symlinks so i_size does not match
* number of characters reported by readlink(2) which apparently some
@@ -152,8 +152,8 @@ static int udf_symlink_getattr(struct mnt_idmap *idmap,
* let's report the length of string returned by readlink(2) for
* st_size.
*/
- stat->size = strlen(page_address(page));
- put_page(page);
+ stat->size = strlen(folio_address(folio));
+ folio_put(folio);
return 0;
}