Re: linux-next: build failure after merge of the mm tree

From: Andrew Morton
Date: Thu Dec 15 2022 - 22:04:14 EST


On Fri, 16 Dec 2022 12:26:27 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:

> Hi all,
>
> After merging the mm tree, today's linux-next build (sparc defconfig)
> failed like this:
>
> kernel/pid_namespace.c: In function 'create_pid_namespace':
> kernel/pid_namespace.c:114:9: error: implicit declaration of function 'initialize_memfd_noexec_scope'; did you mean 'set_memfd_noexec_scope'? [-Werror=implicit-function-declaration]
> 114 | initialize_memfd_noexec_scope(ns);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | set_memfd_noexec_scope
> kernel/pid_namespace.c: In function 'pid_namespaces_init':
> kernel/pid_namespace.c:462:9: error: implicit declaration of function 'register_pid_ns_sysctl_table_vm'; did you mean 'register_pid_ns_ctl_table_vm'? [-Werror=implicit-function-declaration]
> 462 | register_pid_ns_sysctl_table_vm();
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | register_pid_ns_ctl_table_vm
>
> Caused by commit
>
> 70ebb551866e ("mm/memfd: add MFD_NOEXEC_SEAL and MFD_EXEC")
>

Thanks.

--- a/kernel/pid_sysctl.h~mm-memfd-add-mfd_noexec_seal-and-mfd_exec-fix
+++ a/kernel/pid_sysctl.h
@@ -52,8 +52,10 @@ static inline void register_pid_ns_sysct
register_sysctl_paths(vm_path, pid_ns_ctl_table_vm);
}
#else
+static inline void initialize_memfd_noexec_scope(struct pid_namespace *ns) {}
static inline void set_memfd_noexec_scope(struct pid_namespace *ns) {}
static inline void register_pid_ns_ctl_table_vm(void) {}
+static inline void register_pid_ns_sysctl_table_vm(void) {}
#endif

#endif /* LINUX_PID_SYSCTL_H */
_