[akpm-mm:mm-unstable 245/249] mm/memory-failure.c:1896:20: error: conflicting types for 'free_raw_hwp_pages'; have 'void(struct page *, bool)' {aka 'void(struct page *, _Bool)'}

From: kernel test robot
Date: Mon Jul 04 2022 - 03:38:02 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
head: ce4dc6b0378ef1bd305c37c94fb8aabee4c5be04
commit: 06df85861209bbda16524e813ed959c09dee999b [245/249] mm, hwpoison: make unpoison aware of raw error info in hwpoisoned hugepage
config: parisc-randconfig-r014-20220703 (https://download.01.org/0day-ci/archive/20220704/202207041521.EwJv2nMT-lkp@xxxxxxxxx/config)
compiler: hppa-linux-gcc (GCC) 11.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/commit/?id=06df85861209bbda16524e813ed959c09dee999b
git remote add akpm-mm https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git
git fetch --no-tags akpm-mm mm-unstable
git checkout 06df85861209bbda16524e813ed959c09dee999b
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=parisc SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from include/linux/mmzone.h:21,
from include/linux/gfp.h:6,
from include/linux/mm.h:7,
from mm/memory-failure.c:37:
mm/memory-failure.c: In function 'raw_hwp_list_head':
mm/memory-failure.c:1679:59: error: 'SUBPAGE_INDEX_HWPOISON' undeclared (first use in this function)
1679 | return (struct llist_head *)&page_private(hpage + SUBPAGE_INDEX_HWPOISON);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/mm_types.h:334:43: note: in definition of macro 'page_private'
334 | #define page_private(page) ((page)->private)
| ^~~~
mm/memory-failure.c:1679:59: note: each undeclared identifier is reported only once for each function it appears in
1679 | return (struct llist_head *)&page_private(hpage + SUBPAGE_INDEX_HWPOISON);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/mm_types.h:334:43: note: in definition of macro 'page_private'
334 | #define page_private(page) ((page)->private)
| ^~~~
mm/memory-failure.c: At top level:
>> mm/memory-failure.c:1896:20: error: conflicting types for 'free_raw_hwp_pages'; have 'void(struct page *, bool)' {aka 'void(struct page *, _Bool)'}
1896 | static inline void free_raw_hwp_pages(struct page *hpage, bool move_flag)
| ^~~~~~~~~~~~~~~~~~
mm/memory-failure.c:1725:20: note: previous definition of 'free_raw_hwp_pages' with type 'long int(struct page *, bool)' {aka 'long int(struct page *, _Bool)'}
1725 | static inline long free_raw_hwp_pages(struct page *hpage, bool move_flag)
| ^~~~~~~~~~~~~~~~~~
mm/memory-failure.c: In function 'unpoison_memory':
>> mm/memory-failure.c:2353:31: error: void value not ignored as it ought to be
2353 | count = free_raw_hwp_pages(page, false);
| ^
mm/memory-failure.c:2363:31: error: void value not ignored as it ought to be
2363 | count = free_raw_hwp_pages(page, false);
| ^
mm/memory-failure.c: In function 'raw_hwp_list_head':
mm/memory-failure.c:1680:1: error: control reaches end of non-void function [-Werror=return-type]
1680 | }
| ^
cc1: some warnings being treated as errors


vim +1896 mm/memory-failure.c

1895
> 1896 static inline void free_raw_hwp_pages(struct page *hpage, bool move_flag)
1897 {
1898 }
1899 #endif /* CONFIG_HUGETLB_PAGE */
1900

--
0-DAY CI Kernel Test Service
https://01.org/lkp