mm/shmem: Fix a build error due to shmem_unuse() under !CONFIG_SHMEM
Subsystems (3)
PATCH 1/1 mm/shmem: Fix a build error due to shmem_unuse() under !CONFIG_SHMEM
A patch[1] in -mm tree that titled mm-simplify-try_to_unuse.patch[2] didn't properly change the type of 'shmem_unuse()' definition under !CONFIG_SHMEM, and therefore causing below build error when CONFIG_SHMEM is not set.
linux/mm/shmem.c:3992:5: error: conflicting types for 'shmem_unuse'
3992 | int shmem_unuse(unsigned int type, unsigned long *fs_pages_to_unuse)
| ^~~~~~~~~~~
In file included from linux/include/linux/khugepaged.h:6,
from linux/mm/shmem.c:37:
linux/include/linux/shmem_fs.h:86:5: note: previous declaration of 'shmem_unuse' was here
86 | int shmem_unuse(unsigned int type);
| ^~~~~~~~~~~
linux/scripts/Makefile.build:289: recipe for target 'mm/shmem.o' failed
This commit fixes the issue by fixing the type of the definition under the config.
[1] https://lore.kernel.org/linux-mm/[email protected]/
[2] https://www.ozlabs.org/~akpm/mmotm/broken-out/mm-simplify-try_to_unuse.patch
--- mm/shmem.c | 2 +- scripts/rust-version.sh | 0 2 files changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 scripts/rust-version.sh
mm/shmem.c +1 -1
@@ -3989,7 +3989,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 ; }
scripts/rust-version.sh +0 -0
Signature · 1 line
2.17.1
Quoted 15 lines · SeongJae Park
A patch[1] in -mm tree that titled mm-simplify-try_to_unuse.patch[2] didn't properly change the type of '
shmem_unuse()' definition under !CONFIG_SHMEM, and therefore causing below build error whenCONFIG_SHMEMis not set.
linux/mm/shmem.c:3992:5: error: conflicting types for 'shmem_unuse'
3992 | intshmem_unuse(unsigned int type, unsigned long *fs_pages_to_unuse)
| ^~~~~~~~~~~
In file included fromlinux/include/linux/khugepaged.h:6,
fromlinux/mm/shmem.c:37:
linux/include/linux/shmem_fs.h:86:5: note: previous declaration of 'shmem_unuse' was here
86 | intshmem_unuse(unsigned int type);
| ^~~~~~~~~~~
linux/scripts/Makefile.build:289: recipe for target 'mm/shmem.o' failed
Quoted 7 lines
This commit fixes the issue by fixing the type of the definition under the config.
[1] https://lore.kernel.org/linux-mm/[email protected]/
[2] https://www.ozlabs.org/~akpm/mmotm/broken-out/mm-simplify-try_to_unuse.patchSigned-off-by SeongJae Park <[email protected]>
Thanks.
Quoted 22 lines
--- mm/shmem.c | 2 +- scripts/rust-version.sh | 0 2 files changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 scripts/rust-version.shmm/shmem.c +1
-1@@ -3989,7 +3989,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 ; }scripts/rust-version.sh +0
-0
Signature · 1 line
~Randy
Thanks, this looks good: