The patch titled Subject: zmalloc: hide unused lock_zspage has been removed from the -mm tree. Its filename was mm-zsmalloc-make-several-functions-and-a-struct-static-fix.patch This patch was dropped because it was folded into mm-zsmalloc-make-several-functions-and-a-struct-static.patch ------------------------------------------------------ From: Arnd Bergmann <arnd@xxxxxxxx> Subject: zmalloc: hide unused lock_zspage Making lock_zspage() static revealed that it is unused in some confiurations: mm/zsmalloc.c:931:13: error: 'lock_zspage' defined but not used [-Werror=unused-function] I considered moving it into the same #ifdef that hides its user, but it seems better to keep it close to trylock_zspage() etc, so this marks it __maybe_unused() to let the compiler drop it without warning about it. Link: http://lkml.kernel.org/r/20180706130924.3891230-1-arnd@xxxxxxxx Fixes: 0de664ada6b6 ("mm/zsmalloc.c: make several functions and a struct static") Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Reviewed-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Cc: Minchan Kim <minchan@xxxxxxxxxx> Cc: Colin Ian King <colin.king@xxxxxxxxxxxxx> Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx> Cc: Nick Desaulniers <nick.desaulniers@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/zsmalloc.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) --- a/mm/zsmalloc.c~mm-zsmalloc-make-several-functions-and-a-struct-static-fix +++ a/mm/zsmalloc.c @@ -924,19 +924,6 @@ static void reset_page(struct page *page page->freelist = NULL; } -/* - * To prevent zspage destroy during migration, zspage freeing should - * hold locks of all pages in the zspage. - */ -static void lock_zspage(struct zspage *zspage) -{ - struct page *page = get_first_page(zspage); - - do { - lock_page(page); - } while ((page = get_next_page(page)) != NULL); -} - static int trylock_zspage(struct zspage *zspage) { struct page *cursor, *fail; @@ -1814,6 +1801,19 @@ static enum fullness_group putback_zspag } #ifdef CONFIG_COMPACTION +/* + * To prevent zspage destroy during migration, zspage freeing should + * hold locks of all pages in the zspage. + */ +static void lock_zspage(struct zspage *zspage) +{ + struct page *page = get_first_page(zspage); + + do { + lock_page(page); + } while ((page = get_next_page(page)) != NULL); +} + static struct dentry *zs_mount(struct file_system_type *fs_type, int flags, const char *dev_name, void *data) { _ Patches currently in -mm which might be from arnd@xxxxxxxx are bitfield-avoid-gcc-8-wint-in-bool-context-warning.patch firewire-use-64-bit-time_t-based-interfaces.patch ufs-use-ktime_get_real_seconds-for-sb-and-cg-timestamps.patch ntfs-use-timespec64-directly-for-timestamp-conversion.patch hpfs-extend-gmt_to_local-conversion-to-64-bit-times.patch shmem-use-monotonic-time-for-i_generation.patch mm-zsmalloc-make-several-functions-and-a-struct-static.patch