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

From: Andrew Morton <[email-masked]>
Date: Thu, 15 Dec 2022 19:04:02 -0800

On Fri, 16 Dec 2022 12:26:27 +1100 Stephen Rothwell <[email-masked]> 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 */
_