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

nilfs2: convert nilfs_btnode_commit_change_key to use a folio

Saves one call to compound_head().

Link: https://lkml.kernel.org/r/20231114084436.2755-20-konishi.ryusuke@gmail.comSigned-off-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: default avatarRyusuke Konishi <konishi.ryusuke@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 7c5c654c
...@@ -238,15 +238,15 @@ void nilfs_btnode_commit_change_key(struct address_space *btnc, ...@@ -238,15 +238,15 @@ void nilfs_btnode_commit_change_key(struct address_space *btnc,
{ {
struct buffer_head *obh = ctxt->bh, *nbh = ctxt->newbh; struct buffer_head *obh = ctxt->bh, *nbh = ctxt->newbh;
__u64 oldkey = ctxt->oldkey, newkey = ctxt->newkey; __u64 oldkey = ctxt->oldkey, newkey = ctxt->newkey;
struct page *opage; struct folio *ofolio;
if (oldkey == newkey) if (oldkey == newkey)
return; return;
if (nbh == NULL) { /* blocksize == pagesize */ if (nbh == NULL) { /* blocksize == pagesize */
opage = obh->b_page; ofolio = obh->b_folio;
if (unlikely(oldkey != opage->index)) if (unlikely(oldkey != ofolio->index))
NILFS_PAGE_BUG(opage, NILFS_PAGE_BUG(&ofolio->page,
"invalid oldkey %lld (newkey=%lld)", "invalid oldkey %lld (newkey=%lld)",
(unsigned long long)oldkey, (unsigned long long)oldkey,
(unsigned long long)newkey); (unsigned long long)newkey);
...@@ -257,8 +257,8 @@ void nilfs_btnode_commit_change_key(struct address_space *btnc, ...@@ -257,8 +257,8 @@ void nilfs_btnode_commit_change_key(struct address_space *btnc,
__xa_set_mark(&btnc->i_pages, newkey, PAGECACHE_TAG_DIRTY); __xa_set_mark(&btnc->i_pages, newkey, PAGECACHE_TAG_DIRTY);
xa_unlock_irq(&btnc->i_pages); xa_unlock_irq(&btnc->i_pages);
opage->index = obh->b_blocknr = newkey; ofolio->index = obh->b_blocknr = newkey;
unlock_page(opage); folio_unlock(ofolio);
} else { } else {
nilfs_copy_buffer(nbh, obh); nilfs_copy_buffer(nbh, obh);
mark_buffer_dirty(nbh); mark_buffer_dirty(nbh);
......
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