Re: [willy-pagecache:for-next 58/85] mm/folio-compat.c:181:9: error: implicit declaration of function 'folio_mlock'; did you mean 'folio_lock'?

From: Matthew Wilcox
Date: Mon Feb 14 2022 - 12:28:43 EST


On Tue, Feb 15, 2022 at 01:19:26AM +0800, kernel test robot wrote:
> commit: 2cefeaf011db4a95ecb515cc2ca61d091a792ac1 [58/85] mm/rmap: Turn page_mlock() into folio_mlock()
>
> mm/folio-compat.c:169:6: warning: no previous prototype for 'clear_page_mlock' [-Wmissing-prototypes]
> 169 | void clear_page_mlock(struct page *page)
> | ^~~~~~~~~~~~~~~~
> mm/folio-compat.c:174:6: error: redefinition of 'mlock_vma_page'
> 174 | void mlock_vma_page(struct page *page)
> | ^~~~~~~~~~~~~~
> In file included from mm/folio-compat.c:11:
> mm/internal.h:503:20: note: previous definition of 'mlock_vma_page' with type 'void(struct page *)'
> 503 | static inline void mlock_vma_page(struct page *page) { }
> | ^~~~~~~~~~~~~~
> mm/folio-compat.c: In function 'mlock_vma_page':
> mm/folio-compat.c:176:9: error: implicit declaration of function 'mlock_vma_folio'; did you mean 'mlock_vma_page'? [-Werror=implicit-function-declaration]
> 176 | mlock_vma_folio(page_folio(page));
> | ^~~~~~~~~~~~~~~
> | mlock_vma_page
> mm/folio-compat.c: At top level:
> mm/folio-compat.c:179:6: warning: no previous prototype for 'page_mlock' [-Wmissing-prototypes]
> 179 | void page_mlock(struct page *page)
> | ^~~~~~~~~~
> mm/folio-compat.c: In function 'page_mlock':
> >> mm/folio-compat.c:181:9: error: implicit declaration of function 'folio_mlock'; did you mean 'folio_lock'? [-Werror=implicit-function-declaration]
> 181 | folio_mlock(page_folio(page));
> | ^~~~~~~~~~~
> | folio_lock
> cc1: some warnings being treated as errors

All fixed in an update I pushed about two hours ago ;-)