mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-12-27 13:30:45 -05:00
nilfs2: convert nilfs_abort_logs to use folios
Use the new folio APIs, saving five hidden calls to compound_head(). Link: https://lkml.kernel.org/r/20231114084436.2755-3-konishi.ryusuke@gmail.com Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
committed by
Andrew Morton
parent
8f46eaf6fd
commit
50196f0081
@@ -1788,7 +1788,7 @@ static void nilfs_end_page_io(struct page *page, int err)
|
||||
static void nilfs_abort_logs(struct list_head *logs, int err)
|
||||
{
|
||||
struct nilfs_segment_buffer *segbuf;
|
||||
struct page *bd_page = NULL, *fs_page = NULL;
|
||||
struct folio *bd_folio = NULL, *fs_folio = NULL;
|
||||
struct buffer_head *bh;
|
||||
|
||||
if (list_empty(logs))
|
||||
@@ -1798,10 +1798,10 @@ static void nilfs_abort_logs(struct list_head *logs, int err)
|
||||
list_for_each_entry(bh, &segbuf->sb_segsum_buffers,
|
||||
b_assoc_buffers) {
|
||||
clear_buffer_uptodate(bh);
|
||||
if (bh->b_page != bd_page) {
|
||||
if (bd_page)
|
||||
end_page_writeback(bd_page);
|
||||
bd_page = bh->b_page;
|
||||
if (bh->b_folio != bd_folio) {
|
||||
if (bd_folio)
|
||||
folio_end_writeback(bd_folio);
|
||||
bd_folio = bh->b_folio;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1810,22 +1810,22 @@ static void nilfs_abort_logs(struct list_head *logs, int err)
|
||||
clear_buffer_async_write(bh);
|
||||
if (bh == segbuf->sb_super_root) {
|
||||
clear_buffer_uptodate(bh);
|
||||
if (bh->b_page != bd_page) {
|
||||
end_page_writeback(bd_page);
|
||||
bd_page = bh->b_page;
|
||||
if (bh->b_folio != bd_folio) {
|
||||
folio_end_writeback(bd_folio);
|
||||
bd_folio = bh->b_folio;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (bh->b_page != fs_page) {
|
||||
nilfs_end_page_io(fs_page, err);
|
||||
fs_page = bh->b_page;
|
||||
if (bh->b_folio != fs_folio) {
|
||||
nilfs_end_folio_io(fs_folio, err);
|
||||
fs_folio = bh->b_folio;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (bd_page)
|
||||
end_page_writeback(bd_page);
|
||||
if (bd_folio)
|
||||
folio_end_writeback(bd_folio);
|
||||
|
||||
nilfs_end_page_io(fs_page, err);
|
||||
nilfs_end_folio_io(fs_folio, err);
|
||||
}
|
||||
|
||||
static void nilfs_segctor_abort_construction(struct nilfs_sc_info *sci,
|
||||
|
||||
Reference in New Issue
Block a user