2023-06-07 15:02:19

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] syscalls: add sys_ni_posix_timers prototype

From: Arnd Bergmann <[email protected]>

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 <[email protected]>
---
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



2023-06-07 21:46:30

by Kees Cook

[permalink] [raw]
Subject: Re: [PATCH] syscalls: add sys_ni_posix_timers prototype

On Wed, Jun 07, 2023 at 04:28:45PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> 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 <[email protected]>

Reviewed-by: Kees Cook <[email protected]>

--
Kees Cook

2023-06-10 12:15:05

by Thomas Gleixner

[permalink] [raw]
Subject: Re: [PATCH] syscalls: add sys_ni_posix_timers prototype

On Wed, Jun 07 2023 at 16:28, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> 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 <[email protected]>
> ---
> 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.

Subject: [tip: timers/core] posix-timers: Add sys_ni_posix_timers() prototype

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 <[email protected]>
AuthorDate: Wed, 07 Jun 2023 16:28:45 +02:00
Committer: Thomas Gleixner <[email protected]>
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 <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Reviewed-by: Kees Cook <[email protected]>
Link: https://lore.kernel.org/r/[email protected]

---
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.

Subject: [tip: timers/core] posix-timers: Add sys_ni_posix_timers() prototype

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 <[email protected]>
AuthorDate: Wed, 07 Jun 2023 16:28:45 +02:00
Committer: Thomas Gleixner <[email protected]>
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 <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Reviewed-by: Kees Cook <[email protected]>
Link: https://lore.kernel.org/r/[email protected]

---
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.