[PATCH] syscalls: add sys_ni_posix_timers prototype

Arnd Bergmann posted 1 patch 2 years, 8 months ago
arch/alpha/kernel/osf_sys.c | 2 --
include/linux/syscalls.h    | 1 +
kernel/time/posix-stubs.c   | 1 +
3 files changed, 2 insertions(+), 2 deletions(-)
[PATCH] syscalls: add sys_ni_posix_timers prototype
Posted by Arnd Bergmann 2 years, 8 months ago
From: Arnd Bergmann <arnd@arndb.de>

The sys_ni_posix_timers() definition causes a warning when
the declaration is missing, so this needs to be added
along with the normal syscalls, outside of the #ifdef.

kernel/time/posix-stubs.c:26:17: error: no previous prototype for 'sys_ni_posix_timers' [-Werror=missing-prototypes]

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
I missed sending this out in the initial submission of my Wmissing-prototype patches
---
 arch/alpha/kernel/osf_sys.c | 2 --
 include/linux/syscalls.h    | 1 +
 kernel/time/posix-stubs.c   | 1 +
 3 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c
index 2a9a877a05083..d98701ee36c6a 100644
--- a/arch/alpha/kernel/osf_sys.c
+++ b/arch/alpha/kernel/osf_sys.c
@@ -1014,8 +1014,6 @@ SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
 	return do_sys_settimeofday64(tv ? &kts : NULL, tz ? &ktz : NULL);
 }
 
-asmlinkage long sys_ni_posix_timers(void);
-
 SYSCALL_DEFINE2(osf_utimes, const char __user *, filename,
 		struct timeval32 __user *, tvs)
 {
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 4627b9cf4b4d9..712f4e1dc6a69 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -1286,6 +1286,7 @@ asmlinkage long sys_ni_syscall(void);
 
 #endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */
 
+asmlinkage long sys_ni_posix_timers(void);
 
 /*
  * Kernel code should not call syscalls (i.e., sys_xyzyyz()) directly.
diff --git a/kernel/time/posix-stubs.c b/kernel/time/posix-stubs.c
index 828aeecbd1e8a..39769b2d1005e 100644
--- a/kernel/time/posix-stubs.c
+++ b/kernel/time/posix-stubs.c
@@ -16,6 +16,7 @@
 #include <linux/posix-timers.h>
 #include <linux/time_namespace.h>
 #include <linux/compat.h>
+#include <linux/syscalls.h>
 
 #ifdef CONFIG_ARCH_HAS_SYSCALL_WRAPPER
 /* Architectures may override SYS_NI and COMPAT_SYS_NI */
-- 
2.39.2
Re: [PATCH] syscalls: add sys_ni_posix_timers prototype
Posted by Thomas Gleixner 2 years, 8 months ago
On Wed, Jun 07 2023 at 16:28, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> The sys_ni_posix_timers() definition causes a warning when
> the declaration is missing, so this needs to be added
> along with the normal syscalls, outside of the #ifdef.
>
> kernel/time/posix-stubs.c:26:17: error: no previous prototype for 'sys_ni_posix_timers' [-Werror=missing-prototypes]
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> I missed sending this out in the initial submission of my Wmissing-prototype patches
> ---
>  arch/alpha/kernel/osf_sys.c | 2 --
>  include/linux/syscalls.h    | 1 +
>  kernel/time/posix-stubs.c   | 1 +
>  3 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c
> index 2a9a877a05083..d98701ee36c6a 100644
> --- a/arch/alpha/kernel/osf_sys.c
> +++ b/arch/alpha/kernel/osf_sys.c
> @@ -1014,8 +1014,6 @@ SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
>  	return do_sys_settimeofday64(tv ? &kts : NULL, tz ? &ktz : NULL);
>  }
>  
> -asmlinkage long sys_ni_posix_timers(void);
> -
>  SYSCALL_DEFINE2(osf_utimes, const char __user *, filename,
>  		struct timeval32 __user *, tvs)
>  {
> diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
> index 4627b9cf4b4d9..712f4e1dc6a69 100644
> --- a/include/linux/syscalls.h
> +++ b/include/linux/syscalls.h
> @@ -1286,6 +1286,7 @@ asmlinkage long sys_ni_syscall(void);
>  
>  #endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */
>  
> +asmlinkage long sys_ni_posix_timers(void);
>  
>  /*
>   * Kernel code should not call syscalls (i.e., sys_xyzyyz()) directly.
> diff --git a/kernel/time/posix-stubs.c b/kernel/time/posix-stubs.c
> index 828aeecbd1e8a..39769b2d1005e 100644
> --- a/kernel/time/posix-stubs.c
> +++ b/kernel/time/posix-stubs.c
> @@ -16,6 +16,7 @@
>  #include <linux/posix-timers.h>
>  #include <linux/time_namespace.h>
>  #include <linux/compat.h>
> +#include <linux/syscalls.h>

That's already included. I'll fix it up while applying.
Re: [PATCH] syscalls: add sys_ni_posix_timers prototype
Posted by Kees Cook 2 years, 8 months ago
On Wed, Jun 07, 2023 at 04:28:45PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> The sys_ni_posix_timers() definition causes a warning when
> the declaration is missing, so this needs to be added
> along with the normal syscalls, outside of the #ifdef.
> 
> kernel/time/posix-stubs.c:26:17: error: no previous prototype for 'sys_ni_posix_timers' [-Werror=missing-prototypes]
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Reviewed-by: Kees Cook <keescook@chromium.org>

-- 
Kees Cook
[tip: timers/core] posix-timers: Add sys_ni_posix_timers() prototype
Posted by tip-bot2 for Arnd Bergmann 2 years, 7 months ago
The following commit has been merged into the timers/core branch of tip:

Commit-ID:     892f439ea17cbf56a36e57c584d583649a64b404
Gitweb:        https://git.kernel.org/tip/892f439ea17cbf56a36e57c584d583649a64b404
Author:        Arnd Bergmann <arnd@arndb.de>
AuthorDate:    Wed, 07 Jun 2023 16:28:45 +02:00
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Sun, 18 Jun 2023 22:41:53 +02:00

posix-timers: Add sys_ni_posix_timers() prototype

The sys_ni_posix_timers() definition causes a warning when the declaration
is missing, so this needs to be added along with the normal syscalls,
outside of the #ifdef.

kernel/time/posix-stubs.c:26:17: error: no previous prototype for 'sys_ni_posix_timers' [-Werror=missing-prototypes]

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230607142925.3126422-1-arnd@kernel.org

---
 arch/alpha/kernel/osf_sys.c | 2 --
 include/linux/syscalls.h    | 1 +
 2 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c
index 2a9a877..d98701e 100644
--- a/arch/alpha/kernel/osf_sys.c
+++ b/arch/alpha/kernel/osf_sys.c
@@ -1014,8 +1014,6 @@ SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
 	return do_sys_settimeofday64(tv ? &kts : NULL, tz ? &ktz : NULL);
 }
 
-asmlinkage long sys_ni_posix_timers(void);
-
 SYSCALL_DEFINE2(osf_utimes, const char __user *, filename,
 		struct timeval32 __user *, tvs)
 {
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 33a0ee3..24871f8 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -1280,6 +1280,7 @@ asmlinkage long sys_ni_syscall(void);
 
 #endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */
 
+asmlinkage long sys_ni_posix_timers(void);
 
 /*
  * Kernel code should not call syscalls (i.e., sys_xyzyyz()) directly.
[tip: timers/core] posix-timers: Add sys_ni_posix_timers() prototype
Posted by tip-bot2 for Arnd Bergmann 2 years, 8 months ago
The following commit has been merged into the timers/core branch of tip:

Commit-ID:     ad0334ffa4f9ae3dacfd89dae578df97f18a5203
Gitweb:        https://git.kernel.org/tip/ad0334ffa4f9ae3dacfd89dae578df97f18a5203
Author:        Arnd Bergmann <arnd@arndb.de>
AuthorDate:    Wed, 07 Jun 2023 16:28:45 +02:00
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Sat, 10 Jun 2023 17:57:30 +02:00

posix-timers: Add sys_ni_posix_timers() prototype

The sys_ni_posix_timers() definition causes a warning when the declaration
is missing, so this needs to be added along with the normal syscalls,
outside of the #ifdef.

kernel/time/posix-stubs.c:26:17: error: no previous prototype for 'sys_ni_posix_timers' [-Werror=missing-prototypes]

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230607142925.3126422-1-arnd@kernel.org

---
 arch/alpha/kernel/osf_sys.c | 2 --
 include/linux/syscalls.h    | 1 +
 2 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c
index 2a9a877..d98701e 100644
--- a/arch/alpha/kernel/osf_sys.c
+++ b/arch/alpha/kernel/osf_sys.c
@@ -1014,8 +1014,6 @@ SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
 	return do_sys_settimeofday64(tv ? &kts : NULL, tz ? &ktz : NULL);
 }
 
-asmlinkage long sys_ni_posix_timers(void);
-
 SYSCALL_DEFINE2(osf_utimes, const char __user *, filename,
 		struct timeval32 __user *, tvs)
 {
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 33a0ee3..24871f8 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -1280,6 +1280,7 @@ asmlinkage long sys_ni_syscall(void);
 
 #endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */
 
+asmlinkage long sys_ni_posix_timers(void);
 
 /*
  * Kernel code should not call syscalls (i.e., sys_xyzyyz()) directly.