]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
efs: Convert efs_symlink_read_folio to use a folio
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Thu, 30 May 2024 20:20:56 +0000 (21:20 +0100)
committerChristian Brauner <brauner@kernel.org>
Fri, 31 May 2024 10:31:39 +0000 (12:31 +0200)
Remove the conversion back into a page and use the folio APIs throughout.
Remove the setting of PG_error instead of converting it; it is unused
by core code or by the rest of EFS, so it serves no purpose here.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Link: https://lore.kernel.org/r/20240530202110.2653630-5-willy@infradead.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/efs/symlink.c

index 3b03a573cb1a0f34ef5daeb953a0f687fcb82ae3..7749feded722b966893b206986c55737f996d7c2 100644 (file)
 
 static int efs_symlink_read_folio(struct file *file, struct folio *folio)
 {
-       struct page *page = &folio->page;
-       char *link = page_address(page);
-       struct buffer_head * bh;
-       struct inode * inode = page->mapping->host;
+       char *link = folio_address(folio);
+       struct buffer_head *bh;
+       struct inode *inode = folio->mapping->host;
        efs_block_t size = inode->i_size;
        int err;
   
@@ -40,12 +39,9 @@ static int efs_symlink_read_folio(struct file *file, struct folio *folio)
                brelse(bh);
        }
        link[size] = '\0';
-       SetPageUptodate(page);
-       unlock_page(page);
-       return 0;
+       err = 0;
 fail:
-       SetPageError(page);
-       unlock_page(page);
+       folio_end_read(folio, err == 0);
        return err;
 }