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