linux-next: build failure after merge of the mm tree

From: Stephen Rothwell
Date: Fri Jan 27 2023 - 01:36:49 EST


Hi all,

After merging the mm tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

fs/gfs2/log.c: In function 'gfs2_ail1_start_one':
fs/gfs2/log.c:143:55: error: passing argument 3 of 'write_cache_pages' from incompatible pointer type [-Werror=incompatible-pointer-types]
143 | ret = write_cache_pages(mapping, wbc, __gfs2_writepage, mapping);
| ^~~~~~~~~~~~~~~~
| |
| int (*)(struct page *, struct writeback_control *, void *)
In file included from fs/gfs2/log.c:20:
include/linux/writeback.h:375:66: note: expected 'writepage_t' {aka 'int (*)(struct folio *, struct writeback_control *, void *)'} but argument is of type 'int (*)(struct page *, struct writeback_control *, void *)'
375 | struct writeback_control *wbc, writepage_t writepage,
| ~~~~~~~~~~~~^~~~~~~~~

Caused by commit

a36a897cc496 ("fs: convert writepage_t callback to pass a folio")

interacting with commit

95ecbd0f162f ("Revert "gfs2: stop using generic_writepages in gfs2_ail1_start_one"")

from Linus' tree (post v6.2-rc4).

I have applied the following merge fix patch for today.

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Fri, 27 Jan 2023 17:26:08 +1100
Subject: [PATCH] gfs2: fix up for "fs: convert writepage_t callback to pass a folio"

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
---
fs/gfs2/log.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c
index 25fd21a9dec8..d750d1128bed 100644
--- a/fs/gfs2/log.c
+++ b/fs/gfs2/log.c
@@ -80,11 +80,11 @@ void gfs2_remove_from_ail(struct gfs2_bufdata *bd)
brelse(bd->bd_bh);
}

-static int __gfs2_writepage(struct page *page, struct writeback_control *wbc,
+static int __gfs2_writepage(struct folio *folio, struct writeback_control *wbc,
void *data)
{
struct address_space *mapping = data;
- int ret = mapping->a_ops->writepage(page, wbc);
+ int ret = mapping->a_ops->writepage(&folio->page, wbc);
mapping_set_error(mapping, ret);
return ret;
}
--
2.35.1

--
Cheers,
Stephen Rothwell

Attachment: pgpbusEsLUQXk.pgp
Description: OpenPGP digital signature