Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

udf: Convert adinicb and symlinks to read_folio

This is a "weak" conversion which converts straight back to using pages.
A full conversion should be performed at some point, hopefully by
someone familiar with the filesystem.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>

+8 -7
+5 -5
fs/udf/file.c
··· 57 57 kunmap_atomic(kaddr); 58 58 } 59 59 60 - static int udf_adinicb_readpage(struct file *file, struct page *page) 60 + static int udf_adinicb_read_folio(struct file *file, struct folio *folio) 61 61 { 62 - BUG_ON(!PageLocked(page)); 63 - __udf_adinicb_readpage(page); 64 - unlock_page(page); 62 + BUG_ON(!folio_test_locked(folio)); 63 + __udf_adinicb_readpage(&folio->page); 64 + folio_unlock(folio); 65 65 66 66 return 0; 67 67 } ··· 127 127 const struct address_space_operations udf_adinicb_aops = { 128 128 .dirty_folio = block_dirty_folio, 129 129 .invalidate_folio = block_invalidate_folio, 130 - .readpage = udf_adinicb_readpage, 130 + .read_folio = udf_adinicb_read_folio, 131 131 .writepage = udf_adinicb_writepage, 132 132 .write_begin = udf_adinicb_write_begin, 133 133 .write_end = udf_adinicb_write_end,
+3 -2
fs/udf/symlink.c
··· 101 101 return 0; 102 102 } 103 103 104 - static int udf_symlink_filler(struct file *file, struct page *page) 104 + static int udf_symlink_filler(struct file *file, struct folio *folio) 105 105 { 106 + struct page *page = &folio->page; 106 107 struct inode *inode = page->mapping->host; 107 108 struct buffer_head *bh = NULL; 108 109 unsigned char *symlink; ··· 184 183 * symlinks can't do much... 185 184 */ 186 185 const struct address_space_operations udf_symlink_aops = { 187 - .readpage = udf_symlink_filler, 186 + .read_folio = udf_symlink_filler, 188 187 }; 189 188 190 189 const struct inode_operations udf_symlink_inode_operations = {