Commit d4059993 authored by Matthew Wilcox (Oracle)'s avatar Matthew Wilcox (Oracle) Committed by Andrew Morton

ext4: convert to folio_create_empty_buffers

Remove an unnecessary folio->page->folio conversion and take advantage of
the new return value from folio_create_empty_buffers().

Link: https://lkml.kernel.org/r/20231016201114.1928083-5-willy@infradead.orgSigned-off-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: default avatarPankaj Raghav <p.raghav@samsung.com>
Cc: Andreas Gruenbacher <agruenba@redhat.com>
Cc: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 4f05f139
...@@ -1020,10 +1020,8 @@ static int ext4_block_write_begin(struct folio *folio, loff_t pos, unsigned len, ...@@ -1020,10 +1020,8 @@ static int ext4_block_write_begin(struct folio *folio, loff_t pos, unsigned len,
BUG_ON(from > to); BUG_ON(from > to);
head = folio_buffers(folio); head = folio_buffers(folio);
if (!head) { if (!head)
create_empty_buffers(&folio->page, blocksize, 0); head = folio_create_empty_buffers(folio, blocksize, 0);
head = folio_buffers(folio);
}
bbits = ilog2(blocksize); bbits = ilog2(blocksize);
block = (sector_t)folio->index << (PAGE_SHIFT - bbits); block = (sector_t)folio->index << (PAGE_SHIFT - bbits);
...@@ -1153,7 +1151,7 @@ static int ext4_write_begin(struct file *file, struct address_space *mapping, ...@@ -1153,7 +1151,7 @@ static int ext4_write_begin(struct file *file, struct address_space *mapping,
* starting the handle. * starting the handle.
*/ */
if (!folio_buffers(folio)) if (!folio_buffers(folio))
create_empty_buffers(&folio->page, inode->i_sb->s_blocksize, 0); folio_create_empty_buffers(folio, inode->i_sb->s_blocksize, 0);
folio_unlock(folio); folio_unlock(folio);
...@@ -3643,10 +3641,8 @@ static int __ext4_block_zero_page_range(handle_t *handle, ...@@ -3643,10 +3641,8 @@ static int __ext4_block_zero_page_range(handle_t *handle,
iblock = index << (PAGE_SHIFT - inode->i_sb->s_blocksize_bits); iblock = index << (PAGE_SHIFT - inode->i_sb->s_blocksize_bits);
bh = folio_buffers(folio); bh = folio_buffers(folio);
if (!bh) { if (!bh)
create_empty_buffers(&folio->page, blocksize, 0); bh = folio_create_empty_buffers(folio, blocksize, 0);
bh = folio_buffers(folio);
}
/* Find the buffer that contains "offset" */ /* Find the buffer that contains "offset" */
pos = blocksize; pos = blocksize;
......
...@@ -183,10 +183,8 @@ mext_page_mkuptodate(struct folio *folio, unsigned from, unsigned to) ...@@ -183,10 +183,8 @@ mext_page_mkuptodate(struct folio *folio, unsigned from, unsigned to)
blocksize = i_blocksize(inode); blocksize = i_blocksize(inode);
head = folio_buffers(folio); head = folio_buffers(folio);
if (!head) { if (!head)
create_empty_buffers(&folio->page, blocksize, 0); head = folio_create_empty_buffers(folio, blocksize, 0);
head = folio_buffers(folio);
}
block = (sector_t)folio->index << (PAGE_SHIFT - inode->i_blkbits); block = (sector_t)folio->index << (PAGE_SHIFT - inode->i_blkbits);
for (bh = head, block_start = 0; bh != head || !block_start; for (bh = head, block_start = 0; bh != head || !block_start;
...@@ -380,9 +378,10 @@ move_extent_per_page(struct file *o_filp, struct inode *donor_inode, ...@@ -380,9 +378,10 @@ move_extent_per_page(struct file *o_filp, struct inode *donor_inode,
} }
/* Perform all necessary steps similar write_begin()/write_end() /* Perform all necessary steps similar write_begin()/write_end()
* but keeping in mind that i_size will not change */ * but keeping in mind that i_size will not change */
if (!folio_buffers(folio[0]))
create_empty_buffers(&folio[0]->page, 1 << orig_inode->i_blkbits, 0);
bh = folio_buffers(folio[0]); bh = folio_buffers(folio[0]);
if (!bh)
bh = folio_create_empty_buffers(folio[0],
1 << orig_inode->i_blkbits, 0);
for (i = 0; i < data_offset_in_page; i++) for (i = 0; i < data_offset_in_page; i++)
bh = bh->b_this_page; bh = bh->b_this_page;
for (i = 0; i < block_len_in_page; i++) { for (i = 0; i < block_len_in_page; i++) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment