Re: [next] mm/shmem.c:3993:5: error: conflicting types for 'shmem_unuse'; have 'int(unsigned int, long unsigned int *)'

From: Matthew Wilcox
Date: Wed Jan 05 2022 - 12:41:16 EST


On Wed, Jan 05, 2022 at 08:01:19PM +0530, Naresh Kamboju wrote:
> mm/shmem.c:3993:5: error: conflicting types for 'shmem_unuse'; have
> 'int(unsigned int, long unsigned int *)'
> 3993 | int shmem_unuse(unsigned int type, unsigned long *fs_pages_to_unuse)
> | ^~~~~~~~~~~
> In file included from include/linux/khugepaged.h:6,
> from mm/shmem.c:37:
> include/linux/shmem_fs.h:86:5: note: previous declaration of
> 'shmem_unuse' with type 'int(unsigned int)'
> 86 | int shmem_unuse(unsigned int type);
> | ^~~~~~~~~~~

This is "mm: simplify try_to_unuse" in akpm's tree.

It needs a fix that looks something like this:

+++ b/mm/shmem.c
@@ -3990,7 +3990,7 @@ int __init shmem_init(void)
return 0;
}

-int shmem_unuse(unsigned int type, unsigned long *fs_pages_to_unuse)
+int shmem_unuse(unsigned int type)
{
return 0;
}