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

From: Stephen Rothwell <[email-masked]>
Date: Fri, 8 Jul 2022 19:44:37 +1000

Hi all,

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

fs/xfs/xfs_notify_failure.c: In function 'xfs_dax_notify_ddev_failure':
fs/xfs/xfs_notify_failure.c:126:44: error: passing argument 1 of 'xfs_alloc_read_agf' from incompatible pointer type [-Werror=incompatible-pointer-types]
  126 |                 error = xfs_alloc_read_agf(mp, tp, agno, 0, &agf_bp);
      |                                            ^~
      |                                            |
      |                                            struct xfs_mount *
In file included from fs/xfs/xfs_notify_failure.c:12:
fs/xfs/libxfs/xfs_alloc.h:173:42: note: expected 'struct xfs_perag *' but argument is of type 'struct xfs_mount *'
  173 | int xfs_alloc_read_agf(struct xfs_perag *pag, struct xfs_trans *tp, int flags,
      |                        ~~~~~~~~~~~~~~~~~~^~~
fs/xfs/xfs_notify_failure.c:126:25: error: too many arguments to function 'xfs_alloc_read_agf'
  126 |                 error = xfs_alloc_read_agf(mp, tp, agno, 0, &agf_bp);
      |                         ^~~~~~~~~~~~~~~~~~
In file included from fs/xfs/xfs_notify_failure.c:12:
fs/xfs/libxfs/xfs_alloc.h:173:5: note: declared here
  173 | int xfs_alloc_read_agf(struct xfs_perag *pag, struct xfs_trans *tp, int flags,
      |     ^~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Caused by commit

  469a9c74c119 ("xfs: implement ->notify_failure() for XFS")

interacting with commit

  c4829aba9c8d ("xfs: pass perag to xfs_alloc_read_agf()")

from the xfs tree.

I have applied the following merge fix patch.

From: Stephen Rothwell <[email-masked]>
Date: Fri, 8 Jul 2022 19:11:56 +1000
Subject: [PATCH] fix up for "xfs: pass perag to xfs_alloc_read_agf()"

interacting with "xfs: implement ->notify_failure() for XFS"

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 fs/xfs/xfs_notify_failure.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/fs/xfs/xfs_notify_failure.c b/fs/xfs/xfs_notify_failure.c
index aa8dc27c599c..f3c62c19475e 100644
--- a/fs/xfs/xfs_notify_failure.c
+++ b/fs/xfs/xfs_notify_failure.c
@@ -18,6 +18,7 @@
 #include "xfs_rmap_btree.h"
 #include "xfs_rtalloc.h"
 #include "xfs_trans.h"
+#include "xfs_ag.h"
 
 #include <linux/mm.h>
 #include <linux/dax.h>
@@ -122,8 +123,10 @@ xfs_dax_notify_ddev_failure(
 		struct failure_info	notify;
 		struct xfs_agf		*agf;
 		xfs_agblock_t		agend;
+		struct xfs_perag	*pag;
 
-		error = xfs_alloc_read_agf(mp, tp, agno, 0, &agf_bp);
+		pag = xfs_perag_get(mp, agno);
+		error = xfs_alloc_read_agf(pag, tp, 0, &agf_bp);
 		if (error)
 			break;
 
-- 
2.35.1

-- 
Cheers,
Stephen Rothwell