summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Wilcox (Oracle) <willy@infradead.org>2024-07-09 10:52:44 -0400
committerChristian Brauner <brauner@kernel.org>2024-08-07 11:31:54 +0200
commitd3a2fa28fe516cf9621ffdafde35308bebc4714c (patch)
tree001eb5ad5f1030ea84b05584a3a233be7077495e
parent7f4fb150631bc2b1de11938f9fc9f8c60abae591 (diff)
sysv: Convert sysv_prepare_chunk() to take a folio
All callers now have a folio, so convert sysv_prepare_chunk() to take one. Reviewed-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Christian Brauner <brauner@kernel.org>
-rw-r--r--fs/sysv/dir.c8
-rw-r--r--fs/sysv/itree.c4
-rw-r--r--fs/sysv/sysv.h4
3 files changed, 8 insertions, 8 deletions
diff --git a/fs/sysv/dir.c b/fs/sysv/dir.c
index 5f91a82a2966..43615b803fee 100644
--- a/fs/sysv/dir.c
+++ b/fs/sysv/dir.c
@@ -213,7 +213,7 @@ int sysv_add_link(struct dentry *dentry, struct inode *inode)
got_it:
pos = folio_pos(folio) + offset_in_folio(folio, de);
folio_lock(folio);
- err = sysv_prepare_chunk(&folio->page, pos, SYSV_DIRSIZE);
+ err = sysv_prepare_chunk(folio, pos, SYSV_DIRSIZE);
if (err)
goto out_unlock;
memcpy (de->name, name, namelen);
@@ -238,7 +238,7 @@ int sysv_delete_entry(struct sysv_dir_entry *de, struct folio *folio)
int err;
folio_lock(folio);
- err = sysv_prepare_chunk(&folio->page, pos, SYSV_DIRSIZE);
+ err = sysv_prepare_chunk(folio, pos, SYSV_DIRSIZE);
if (err) {
folio_unlock(folio);
return err;
@@ -259,7 +259,7 @@ int sysv_make_empty(struct inode *inode, struct inode *dir)
if (IS_ERR(folio))
return PTR_ERR(folio);
- err = sysv_prepare_chunk(&folio->page, 0, 2 * SYSV_DIRSIZE);
+ err = sysv_prepare_chunk(folio, 0, 2 * SYSV_DIRSIZE);
if (err) {
folio_unlock(folio);
goto fail;
@@ -335,7 +335,7 @@ int sysv_set_link(struct sysv_dir_entry *de, struct folio *folio,
int err;
folio_lock(folio);
- err = sysv_prepare_chunk(&folio->page, pos, SYSV_DIRSIZE);
+ err = sysv_prepare_chunk(folio, pos, SYSV_DIRSIZE);
if (err) {
folio_unlock(folio);
return err;
diff --git a/fs/sysv/itree.c b/fs/sysv/itree.c
index 19bcb51a2203..c8511e286673 100644
--- a/fs/sysv/itree.c
+++ b/fs/sysv/itree.c
@@ -466,9 +466,9 @@ static int sysv_read_folio(struct file *file, struct folio *folio)
return block_read_full_folio(folio, get_block);
}
-int sysv_prepare_chunk(struct page *page, loff_t pos, unsigned len)
+int sysv_prepare_chunk(struct folio *folio, loff_t pos, unsigned len)
{
- return __block_write_begin(page, pos, len, get_block);
+ return __block_write_begin(&folio->page, pos, len, get_block);
}
static void sysv_write_failed(struct address_space *mapping, loff_t to)
diff --git a/fs/sysv/sysv.h b/fs/sysv/sysv.h
index fec9f6b883d5..0a48b2e7edb1 100644
--- a/fs/sysv/sysv.h
+++ b/fs/sysv/sysv.h
@@ -133,8 +133,8 @@ extern void sysv_free_block(struct super_block *, sysv_zone_t);
extern unsigned long sysv_count_free_blocks(struct super_block *);
/* itree.c */
-extern void sysv_truncate(struct inode *);
-extern int sysv_prepare_chunk(struct page *page, loff_t pos, unsigned len);
+void sysv_truncate(struct inode *);
+int sysv_prepare_chunk(struct folio *folio, loff_t pos, unsigned len);
/* inode.c */
extern struct inode *sysv_iget(struct super_block *, unsigned int);