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

From: Stephen Rothwell
Date: Thu Nov 12 2020 - 18:47:44 EST


Hi all,

After merging the ext3 tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

In file included from fs/ext2/file.c:28:
fs/ext2/ext2.h: In function 'ext2_get_page':
fs/ext2/ext2.h:764:28: error: implicit declaration of function 'ext2_check_page'; did you mean 'ext2_get_page'? [-Werror=implicit-function-declaration]
764 | if (PageError(page) || !ext2_check_page(page, quiet))
| ^~~~~~~~~~~~~~~
| ext2_get_page
In file included from fs/ext2/balloc.c:15:
fs/ext2/ext2.h: In function 'ext2_get_page':
fs/ext2/ext2.h:760:22: error: implicit declaration of function 'read_mapping_page'; did you mean 'unmap_mapping_pages'? [-Werror=implicit-function-declaration]
760 | struct page *page = read_mapping_page(mapping, n, NULL);
| ^~~~~~~~~~~~~~~~~
| unmap_mapping_pages
fs/ext2/ext2.h:760:22: warning: initialization of 'struct page *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
fs/ext2/ext2.h:764:28: error: implicit declaration of function 'ext2_check_page'; did you mean 'ext2_get_page'? [-Werror=implicit-function-declaration]
764 | if (PageError(page) || !ext2_check_page(page, quiet))
| ^~~~~~~~~~~~~~~
| ext2_get_page
In file included from include/linux/buffer_head.h:14,
from fs/ext2/balloc.c:20:
include/linux/pagemap.h: At top level:
include/linux/pagemap.h:497:28: error: conflicting types for 'read_mapping_page'
497 | static inline struct page *read_mapping_page(struct address_space *mapping,
| ^~~~~~~~~~~~~~~~~
In file included from fs/ext2/balloc.c:15:
fs/ext2/ext2.h:760:22: note: previous implicit declaration of 'read_mapping_page' was here
760 | struct page *page = read_mapping_page(mapping, n, NULL);
| ^~~~~~~~~~~~~~~~~
In file included from fs/ext2/dir.c:25:
fs/ext2/ext2.h: In function 'ext2_get_page':
fs/ext2/ext2.h:760:22: error: implicit declaration of function 'read_mapping_page'; did you mean 'unmap_mapping_pages'? [-Werror=implicit-function-declaration]
760 | struct page *page = read_mapping_page(mapping, n, NULL);
| ^~~~~~~~~~~~~~~~~
| unmap_mapping_pages
fs/ext2/ext2.h:760:22: warning: initialization of 'struct page *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
fs/ext2/ext2.h:764:28: error: implicit declaration of function 'ext2_check_page'; did you mean 'ext2_get_page'? [-Werror=implicit-function-declaration]
764 | if (PageError(page) || !ext2_check_page(page, quiet))
| ^~~~~~~~~~~~~~~
| ext2_get_page
In file included from include/linux/buffer_head.h:14,
from fs/ext2/dir.c:26:
include/linux/pagemap.h: At top level:
include/linux/pagemap.h:497:28: error: conflicting types for 'read_mapping_page'
497 | static inline struct page *read_mapping_page(struct address_space *mapping,
| ^~~~~~~~~~~~~~~~~
In file included from fs/ext2/dir.c:25:
fs/ext2/ext2.h:760:22: note: previous implicit declaration of 'read_mapping_page' was here
760 | struct page *page = read_mapping_page(mapping, n, NULL);
| ^~~~~~~~~~~~~~~~~
fs/ext2/dir.c:109:13: error: conflicting types for 'ext2_check_page'
109 | static bool ext2_check_page(struct page *page, int quiet)
| ^~~~~~~~~~~~~~~
In file included from fs/ext2/dir.c:25:
fs/ext2/ext2.h:764:28: note: previous implicit declaration of 'ext2_check_page' was here
764 | if (PageError(page) || !ext2_check_page(page, quiet))
| ^~~~~~~~~~~~~~~
fs/ext2/dir.c:109:13: warning: 'ext2_check_page' defined but not used [-Wunused-function]
109 | static bool ext2_check_page(struct page *page, int quiet)
| ^~~~~~~~~~~~~~~


Caused by commit

32559cea1f55 ("fs/ext2: Use ext2_put_page")

Presumably some missing includes :-(

I have used the ext3 tree from next-20201112 for today.

--
Cheers,
Stephen Rothwell

Attachment: pgpKSylyzEkl2.pgp
Description: OpenPGP digital signature