The patch titled Subject: frontswap: simplify frontswap_init has been added to the -mm tree. Its filename is frontswap-simplify-frontswap_init.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/frontswap-simplify-frontswap_init.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/frontswap-simplify-frontswap_init.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Christoph Hellwig <hch@xxxxxx> Subject: frontswap: simplify frontswap_init Just use IS_ENABLED() and remove the __frontswap_init indirection. Also remove the unused export. Link: https://lkml.kernel.org/r/20211224062246.1258487-7-hch@xxxxxx Signed-off-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Juergen Gross <jgross@xxxxxxxx> Cc: Dan Streetman <ddstreet@xxxxxxxx> Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> Cc: Hugh Dickins <hughd@xxxxxxxxxx> Cc: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx> Cc: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> Cc: Seth Jennings <sjenning@xxxxxxxxxx> Cc: Vitaly Wool <vitaly.wool@xxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/frontswap.h | 9 +-------- mm/frontswap.c | 3 +-- mm/swapfile.c | 3 ++- 3 files changed, 4 insertions(+), 11 deletions(-) --- a/include/linux/frontswap.h~frontswap-simplify-frontswap_init +++ a/include/linux/frontswap.h @@ -26,7 +26,7 @@ struct frontswap_ops { extern void frontswap_register_ops(struct frontswap_ops *ops); extern bool __frontswap_test(struct swap_info_struct *, pgoff_t); -extern void __frontswap_init(unsigned type, unsigned long *map); +extern void frontswap_init(unsigned type, unsigned long *map); extern int __frontswap_store(struct page *page); extern int __frontswap_load(struct page *page); extern void __frontswap_invalidate_page(unsigned, pgoff_t); @@ -107,11 +107,4 @@ static inline void frontswap_invalidate_ __frontswap_invalidate_area(type); } -static inline void frontswap_init(unsigned type, unsigned long *map) -{ -#ifdef CONFIG_FRONTSWAP - __frontswap_init(type, map); -#endif -} - #endif /* _LINUX_FRONTSWAP_H */ --- a/mm/frontswap.c~frontswap-simplify-frontswap_init +++ a/mm/frontswap.c @@ -156,7 +156,7 @@ EXPORT_SYMBOL(frontswap_register_ops); /* * Called when a swap device is swapon'd. */ -void __frontswap_init(unsigned type, unsigned long *map) +void frontswap_init(unsigned type, unsigned long *map) { struct swap_info_struct *sis = swap_info[type]; struct frontswap_ops *ops; @@ -179,7 +179,6 @@ void __frontswap_init(unsigned type, uns for_each_frontswap_ops(ops) ops->init(type); } -EXPORT_SYMBOL(__frontswap_init); bool __frontswap_test(struct swap_info_struct *sis, pgoff_t offset) --- a/mm/swapfile.c~frontswap-simplify-frontswap_init +++ a/mm/swapfile.c @@ -2463,7 +2463,8 @@ static void enable_swap_info(struct swap struct swap_cluster_info *cluster_info, unsigned long *frontswap_map) { - frontswap_init(p->type, frontswap_map); + if (IS_ENABLED(CONFIG_FRONTSWAP)) + frontswap_init(p->type, frontswap_map); spin_lock(&swap_lock); spin_lock(&p->lock); setup_swap_info(p, prio, swap_map, cluster_info); _ Patches currently in -mm which might be from hch@xxxxxx are mm-remove-cleancache.patch frontswap-remove-frontswap_writethrough.patch frontswap-remove-frontswap_tmem_exclusive_gets.patch frontswap-remove-frontswap_shrink.patch frontswap-remove-frontswap_curr_pages.patch frontswap-simplify-frontswap_init.patch frontswap-remove-the-frontswap-exports.patch mm-simplify-try_to_unuse.patch frontswap-remove-frontswap_test.patch frontswap-simplify-frontswap_register_ops.patch mm-mark-swap_lock-and-swap_active_head-static.patch frontswap-remove-support-for-multiple-ops.patch mm-hide-the-frontswap-kconfig-symbol.patch