* [PATCH 01/15] ia64: add __NR_umount2 definition
[not found] <20190110162435.309262-1-arnd@arndb.de>
@ 2019-01-10 16:24 ` Arnd Bergmann
2019-01-10 16:24 ` [PATCH 02/15] ia64: add statx and io_pgetevents syscalls Arnd Bergmann
` (7 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 16:24 UTC (permalink / raw)
To: y2038, linux-api, linux-kernel
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, will.deacon, linux,
jcmvbkbc, deepa.kernel, hpa, sparclinux, linux-s390, dave, mpe,
deller, x86, linux, mingo, geert, firoz.khan, mattst88,
fenghua.yu, Arnd Bergmann, heiko.carstens, linux-m68k, ink, luto,
tglx, linux-arm-kernel, monstr, tony.luck, linux-parisc,
linux-mips, paul.burton, ebiederm, linux-alpha, schwidefsky, akpm,
linuxppc-dev
Other architectures commonly use __NR_umount2 for sys_umount,
only ia64 and alpha use __NR_umount here. In order to synchronize
the generated tables, use umount2 like everyone else, and add back
the old name from asm/unistd.h for compatibility.
The __IGNORE_* lines are now all obsolete and can be removed as
a side-effect.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/ia64/include/asm/unistd.h | 14 --------------
arch/ia64/include/uapi/asm/unistd.h | 2 ++
arch/ia64/kernel/syscalls/syscall.tbl | 2 +-
3 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/arch/ia64/include/asm/unistd.h b/arch/ia64/include/asm/unistd.h
index 0b08ebd2dfde..9ba6110b10b9 100644
--- a/arch/ia64/include/asm/unistd.h
+++ b/arch/ia64/include/asm/unistd.h
@@ -12,20 +12,6 @@
#define NR_syscalls __NR_syscalls /* length of syscall table */
-/*
- * The following defines stop scripts/checksyscalls.sh from complaining about
- * unimplemented system calls. Glibc provides for each of these by using
- * more modern equivalent system calls.
- */
-#define __IGNORE_fork /* clone() */
-#define __IGNORE_time /* gettimeofday() */
-#define __IGNORE_alarm /* setitimer(ITIMER_REAL, ... */
-#define __IGNORE_pause /* rt_sigprocmask(), rt_sigsuspend() */
-#define __IGNORE_utime /* utimes() */
-#define __IGNORE_getpgrp /* getpgid() */
-#define __IGNORE_vfork /* clone() */
-#define __IGNORE_umount2 /* umount() */
-
#define __ARCH_WANT_NEW_STAT
#define __ARCH_WANT_SYS_UTIME
diff --git a/arch/ia64/include/uapi/asm/unistd.h b/arch/ia64/include/uapi/asm/unistd.h
index b2513922dcb5..013e0bcacc39 100644
--- a/arch/ia64/include/uapi/asm/unistd.h
+++ b/arch/ia64/include/uapi/asm/unistd.h
@@ -15,6 +15,8 @@
#define __NR_Linux 1024
+#define __NR_umount __NR_umount2
+
#include <asm/unistd_64.h>
#endif /* _UAPI_ASM_IA64_UNISTD_H */
diff --git a/arch/ia64/kernel/syscalls/syscall.tbl b/arch/ia64/kernel/syscalls/syscall.tbl
index b22203b40bfe..e97caf51be42 100644
--- a/arch/ia64/kernel/syscalls/syscall.tbl
+++ b/arch/ia64/kernel/syscalls/syscall.tbl
@@ -29,7 +29,7 @@
17 common getpid sys_getpid
18 common getppid sys_getppid
19 common mount sys_mount
-20 common umount sys_umount
+20 common umount2 sys_umount
21 common setuid sys_setuid
22 common getuid sys_getuid
23 common geteuid sys_geteuid
--
2.20.0
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 02/15] ia64: add statx and io_pgetevents syscalls
[not found] <20190110162435.309262-1-arnd@arndb.de>
2019-01-10 16:24 ` [PATCH 01/15] ia64: add __NR_umount2 definition Arnd Bergmann
@ 2019-01-10 16:24 ` Arnd Bergmann
2019-01-10 16:24 ` [PATCH 03/15] ia64: assign syscall numbers for perf and seccomp Arnd Bergmann
` (6 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 16:24 UTC (permalink / raw)
To: y2038, linux-api, linux-kernel
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, will.deacon, linux,
jcmvbkbc, deepa.kernel, hpa, sparclinux, linux-s390, dave, mpe,
deller, x86, linux, mingo, geert, firoz.khan, mattst88,
fenghua.yu, Arnd Bergmann, heiko.carstens, linux-m68k, ink, luto,
tglx, linux-arm-kernel, monstr, tony.luck, linux-parisc,
linux-mips, paul.burton, ebiederm, linux-alpha, schwidefsky, akpm,
linuxppc-dev
All architectures should implement these two, so assign numbers
and hook them up on ia64.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/ia64/kernel/syscalls/syscall.tbl | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/ia64/kernel/syscalls/syscall.tbl b/arch/ia64/kernel/syscalls/syscall.tbl
index e97caf51be42..52585281205b 100644
--- a/arch/ia64/kernel/syscalls/syscall.tbl
+++ b/arch/ia64/kernel/syscalls/syscall.tbl
@@ -335,3 +335,5 @@
323 common copy_file_range sys_copy_file_range
324 common preadv2 sys_preadv2
325 common pwritev2 sys_pwritev2
+326 common statx sys_statx
+327 common io_pgetevents sys_io_pgetevents
--
2.20.0
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 03/15] ia64: assign syscall numbers for perf and seccomp
[not found] <20190110162435.309262-1-arnd@arndb.de>
2019-01-10 16:24 ` [PATCH 01/15] ia64: add __NR_umount2 definition Arnd Bergmann
2019-01-10 16:24 ` [PATCH 02/15] ia64: add statx and io_pgetevents syscalls Arnd Bergmann
@ 2019-01-10 16:24 ` Arnd Bergmann
2019-01-10 16:24 ` [PATCH 06/15] ARM: add migrate_pages() system call Arnd Bergmann
` (5 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 16:24 UTC (permalink / raw)
To: y2038, linux-api, linux-kernel
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, will.deacon, linux,
jcmvbkbc, deepa.kernel, hpa, sparclinux, linux-s390, dave, mpe,
deller, x86, linux, mingo, geert, firoz.khan, mattst88,
fenghua.yu, Arnd Bergmann, heiko.carstens, linux-m68k, ink, luto,
tglx, linux-arm-kernel, monstr, tony.luck, linux-parisc,
linux-mips, paul.burton, ebiederm, linux-alpha, schwidefsky, akpm,
linuxppc-dev
Most architectures have assigned numbers for both seccomp and
perf_event_open, even when they do not implement either.
ia64 is an exception here, so for consistency lets add numbers for both
of them. Unless CONFIG_PERF_EVENTS and CONFIG_SECCOMP are implemented,
the system calls just return -ENOSYS.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/ia64/kernel/syscalls/syscall.tbl | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/ia64/kernel/syscalls/syscall.tbl b/arch/ia64/kernel/syscalls/syscall.tbl
index 52585281205b..2e93dbdcdb80 100644
--- a/arch/ia64/kernel/syscalls/syscall.tbl
+++ b/arch/ia64/kernel/syscalls/syscall.tbl
@@ -337,3 +337,5 @@
325 common pwritev2 sys_pwritev2
326 common statx sys_statx
327 common io_pgetevents sys_io_pgetevents
+328 common perf_event_open sys_perf_event_open
+329 common seccomp sys_seccomp
--
2.20.0
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 06/15] ARM: add migrate_pages() system call
[not found] <20190110162435.309262-1-arnd@arndb.de>
` (2 preceding siblings ...)
2019-01-10 16:24 ` [PATCH 03/15] ia64: assign syscall numbers for perf and seccomp Arnd Bergmann
@ 2019-01-10 16:24 ` Arnd Bergmann
2019-01-10 16:24 ` [PATCH 11/15] mips: fix n32 compat_ipc_parse_version Arnd Bergmann
` (4 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 16:24 UTC (permalink / raw)
To: y2038, linux-api, linux-kernel
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, will.deacon, linux,
jcmvbkbc, deepa.kernel, hpa, sparclinux, linux-s390, dave, mpe,
deller, x86, linux, mingo, geert, firoz.khan, mattst88,
fenghua.yu, Arnd Bergmann, heiko.carstens, linux-m68k, ink, luto,
tglx, linux-arm-kernel, monstr, tony.luck, linux-parisc,
linux-mips, paul.burton, ebiederm, linux-alpha, schwidefsky, akpm,
linuxppc-dev
The migrate_pages system call has an assigned number on all architectures
except ARM. When it got added initially in commit d80ade7b3231 ("ARM:
Fix warning: #warning syscall migrate_pages not implemented"), it was
intentionally left out based on the observation that there are no 32-bit
ARM NUMA systems.
However, there are now arm64 NUMA machines that can in theory run 32-bit
kernels (actually enabling NUMA there would require additional work)
as well as 32-bit user space on 64-bit kernels, so that argument is no
longer very strong.
Assigning the number lets us use the system call on 64-bit kernels as well
as providing a more consistent set of syscalls across architectures.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/include/asm/unistd.h | 1 -
arch/arm/tools/syscall.tbl | 1 +
arch/arm64/include/asm/unistd.h | 2 +-
arch/arm64/include/asm/unistd32.h | 2 ++
4 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index 88ef2ce1f69a..d713587dfcf4 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -45,7 +45,6 @@
* Unimplemented (or alternatively implemented) syscalls
*/
#define __IGNORE_fadvise64_64
-#define __IGNORE_migrate_pages
#ifdef __ARM_EABI__
/*
diff --git a/arch/arm/tools/syscall.tbl b/arch/arm/tools/syscall.tbl
index 8edf93b4490f..86de9eb34296 100644
--- a/arch/arm/tools/syscall.tbl
+++ b/arch/arm/tools/syscall.tbl
@@ -414,3 +414,4 @@
397 common statx sys_statx
398 common rseq sys_rseq
399 common io_pgetevents sys_io_pgetevents
+400 common migrate_pages sys_migrate_pages
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h
index a7b1fc58ffdf..261216c3336e 100644
--- a/arch/arm64/include/asm/unistd.h
+++ b/arch/arm64/include/asm/unistd.h
@@ -44,7 +44,7 @@
#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5)
#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800)
-#define __NR_compat_syscalls 400
+#define __NR_compat_syscalls 401
#endif
#define __ARCH_WANT_SYS_CLONE
diff --git a/arch/arm64/include/asm/unistd32.h b/arch/arm64/include/asm/unistd32.h
index 04ee190b90fe..355fe2bc035b 100644
--- a/arch/arm64/include/asm/unistd32.h
+++ b/arch/arm64/include/asm/unistd32.h
@@ -821,6 +821,8 @@ __SYSCALL(__NR_statx, sys_statx)
__SYSCALL(__NR_rseq, sys_rseq)
#define __NR_io_pgetevents 399
__SYSCALL(__NR_io_pgetevents, compat_sys_io_pgetevents)
+#define __NR_migrate_pages 400
+__SYSCALL(__NR_migrate_pages, sys_migrate_pages)
/*
* Please add new compat syscalls above this comment and update
--
2.20.0
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 11/15] mips: fix n32 compat_ipc_parse_version
[not found] <20190110162435.309262-1-arnd@arndb.de>
` (3 preceding siblings ...)
2019-01-10 16:24 ` [PATCH 06/15] ARM: add migrate_pages() system call Arnd Bergmann
@ 2019-01-10 16:24 ` Arnd Bergmann
2019-01-10 19:39 ` Paul Burton
2019-01-11 19:25 ` Paul Burton
[not found] ` <CAMuHMdXYP3=TRHYqddVRfbRRaj_Ou=wfoX6ohKM7XNAx-c2RXw@mail.gmail.com>
` (3 subsequent siblings)
8 siblings, 2 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 16:24 UTC (permalink / raw)
To: y2038, linux-api, linux-kernel
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, will.deacon, linux,
jcmvbkbc, deepa.kernel, hpa, sparclinux, linux-s390, dave, mpe,
deller, x86, linux, mingo, geert, firoz.khan, mattst88,
fenghua.yu, Arnd Bergmann, heiko.carstens, linux-m68k, ink, luto,
tglx, linux-arm-kernel, monstr, tony.luck, linux-parisc,
linux-mips, stable, paul.burton, ebiederm, linux-alpha,
schwidefsky, akpm
While reading through the sysvipc implementation, I noticed that the n32
semctl/shmctl/msgctl system calls behave differently based on whether
o32 support is enabled or not: Without o32, the IPC_64 flag passed by
user space is rejected but calls without that flag get IPC_64 behavior.
As far as I can tell, this was inadvertently changed by a cleanup patch
but never noticed by anyone, possibly nobody has tried using sysvipc
on n32 after linux-3.19.
Change it back to the old behavior now.
Fixes: 78aaf956ba3a ("MIPS: Compat: Fix build error if CONFIG_MIPS32_COMPAT but no compat ABI.")
Cc: stable@vger.kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
As stated above, this was only found by inspection, the patch is not
tested. Please review accordingly.
---
arch/mips/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 787290781b8c..0d14f51d0002 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -3155,6 +3155,7 @@ config MIPS32_O32
config MIPS32_N32
bool "Kernel support for n32 binaries"
depends on 64BIT
+ select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
select COMPAT
select MIPS32_COMPAT
select SYSVIPC_COMPAT if SYSVIPC
--
2.20.0
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038
[not found] ` <CAMuHMdXYP3=TRHYqddVRfbRRaj_Ou=wfoX6ohKM7XNAx-c2RXw@mail.gmail.com>
@ 2019-01-10 17:06 ` Arnd Bergmann
2019-01-10 18:11 ` Geert Uytterhoeven
0 siblings, 1 reply; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 17:06 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Rich Felker, linux-ia64@vger.kernel.org, Linux-sh list,
Catalin Marinas, Heiko Carstens, Dominik Brodowski, linux-mips,
Max Filippov, Deepa Dinamani, H. Peter Anvin, sparclinux,
linux-s390, Davidlohr Bueso, y2038 Mailman List, Michael Ellerman,
Helge Deller, the arch/x86 maintainers, Russell King, Ingo Molnar,
Firoz Khan, Matt Turner, Fenghua Yu, Will Deacon
On Thu, Jan 10, 2019 at 5:59 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>
> Hi Arnd,
>
> On Thu, Jan 10, 2019 at 5:26 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > The system call tables have diverged a bit over the years, and a number
> > of the recent additions never made it into all architectures, for one
> > reason or another.
> >
> > This is an attempt to clean it up as far as we can without breaking
> > compatibility, doing a number of steps:
>
> Thanks a lot!
>
> > - Add system calls that have not yet been integrated into all
> > architectures but that we definitely want there.
>
> It looks like you missed wiring up io_pgetevents() on m68k.
> Is that intentional?
Yes, I thought I had described that somewhere but maybe I
forgot: semtimedop() and io_pgetevents() get replaced with
time64 versions in the follow-up, so I only added them in
64-bit architectures. If you think we should have both
io_pgetevents() and io_pgetevents_time32() on all 32-bit
architectures, I can add that as well.
Arnd
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038
[not found] <20190110162435.309262-1-arnd@arndb.de>
` (5 preceding siblings ...)
[not found] ` <CAMuHMdXYP3=TRHYqddVRfbRRaj_Ou=wfoX6ohKM7XNAx-c2RXw@mail.gmail.com>
@ 2019-01-10 18:10 ` Joseph Myers
[not found] ` <CAK8P3a2f4SCJXrm6HWO9UKY-akSW+ONNpOvQOtYbia_fRo9ciQ@mail.gmail.com>
[not found] ` <20190110162435.309262-15-arnd@arndb.de>
[not found] ` <20190110162435.309262-16-arnd@arndb.de>
8 siblings, 1 reply; 19+ messages in thread
From: Joseph Myers @ 2019-01-10 18:10 UTC (permalink / raw)
To: Arnd Bergmann
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, heiko.carstens,
linux, linux-mips, jcmvbkbc, deepa.kernel, hpa, sparclinux,
linux-s390, dave, y2038, mpe, deller, x86, linux, mingo, geert,
firoz.khan, mattst88, fenghua.yu, will.deacon, linux-m68k, ink,
luto, tglx, linux-arm-kernel, monstr, tony.luck, linux-parisc,
linux-api, linux-kernel, paul.burton, ebiederm, linux-alpha,
schwidefsky
On Thu, 10 Jan 2019, Arnd Bergmann wrote:
> - Add system calls that have not yet been integrated into all
> architectures but that we definitely want there.
glibc has a note that alpha lacks statfs64, any plans for that?
--
Joseph S. Myers
joseph@codesourcery.com
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038
2019-01-10 17:06 ` [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038 Arnd Bergmann
@ 2019-01-10 18:11 ` Geert Uytterhoeven
[not found] ` <CAK8P3a07yNiadLCJcA0Tyfo90YeQ0P2XF-wOEy9XAb8cDTFObw@mail.gmail.com>
0 siblings, 1 reply; 19+ messages in thread
From: Geert Uytterhoeven @ 2019-01-10 18:11 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Rich Felker, linux-ia64@vger.kernel.org, Linux-sh list,
Catalin Marinas, Heiko Carstens, Dominik Brodowski, linux-mips,
Max Filippov, Deepa Dinamani, H. Peter Anvin, sparclinux,
linux-s390, Davidlohr Bueso, y2038 Mailman List, Michael Ellerman,
Helge Deller, the arch/x86 maintainers, Russell King, Ingo Molnar,
Firoz Khan, Matt Turner, Fenghua Yu, Will Deacon
Hi Arnd,
On Thu, Jan 10, 2019 at 6:06 PM Arnd Bergmann <arnd@arndb.de> wrote:
> On Thu, Jan 10, 2019 at 5:59 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > On Thu, Jan 10, 2019 at 5:26 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > > The system call tables have diverged a bit over the years, and a number
> > > of the recent additions never made it into all architectures, for one
> > > reason or another.
> > >
> > > This is an attempt to clean it up as far as we can without breaking
> > > compatibility, doing a number of steps:
> >
> > Thanks a lot!
> >
> > > - Add system calls that have not yet been integrated into all
> > > architectures but that we definitely want there.
> >
> > It looks like you missed wiring up io_pgetevents() on m68k.
> > Is that intentional?
>
> Yes, I thought I had described that somewhere but maybe I
> forgot: semtimedop() and io_pgetevents() get replaced with
> time64 versions in the follow-up, so I only added them in
> 64-bit architectures. If you think we should have both
> io_pgetevents() and io_pgetevents_time32() on all 32-bit
> architectures, I can add that as well.
Thanks, sounds fine to me.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 11/15] mips: fix n32 compat_ipc_parse_version
2019-01-10 16:24 ` [PATCH 11/15] mips: fix n32 compat_ipc_parse_version Arnd Bergmann
@ 2019-01-10 19:39 ` Paul Burton
2019-01-10 23:04 ` Arnd Bergmann
2019-01-11 19:25 ` Paul Burton
1 sibling, 1 reply; 19+ messages in thread
From: Paul Burton @ 2019-01-10 19:39 UTC (permalink / raw)
To: Arnd Bergmann
Cc: dalias@libc.org, linux-ia64@vger.kernel.org,
linux-sh@vger.kernel.org, catalin.marinas@arm.com,
heiko.carstens@de.ibm.com, linux@dominikbrodowski.net,
linux-mips@vger.kernel.org, jcmvbkbc@gmail.com,
deepa.kernel@gmail.com, hpa@zytor.com, sparclinux@vger.kernel.org,
linux-s390@vger.kernel.org, dave@stgolabs.net,
y2038@lists.linaro.org, mpe@ellerman.id.au, deller@gmx.de,
x86@kernel.org, linux@armlinux.org.uk
Hi Arnd,
On Thu, Jan 10, 2019 at 05:24:31PM +0100, Arnd Bergmann wrote:
> While reading through the sysvipc implementation, I noticed that the n32
> semctl/shmctl/msgctl system calls behave differently based on whether
> o32 support is enabled or not: Without o32, the IPC_64 flag passed by
> user space is rejected but calls without that flag get IPC_64 behavior.
>
> As far as I can tell, this was inadvertently changed by a cleanup patch
> but never noticed by anyone, possibly nobody has tried using sysvipc
> on n32 after linux-3.19.
>
> Change it back to the old behavior now.
>
> Fixes: 78aaf956ba3a ("MIPS: Compat: Fix build error if CONFIG_MIPS32_COMPAT but no compat ABI.")
> Cc: stable@vger.kernel.org
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> As stated above, this was only found by inspection, the patch is not
> tested. Please review accordingly.
Nice catch! Would you prefer to merge this yourself, or that I take it
through the mips tree?
If the former then:
Acked-by: Paul Burton <paul.burton@mips.com>
I suspect kernels configured with n32 support but no o32 support are
probably not very common - for internal testing we currently always
enable both.
Thanks,
Paul
> ---
> arch/mips/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 787290781b8c..0d14f51d0002 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -3155,6 +3155,7 @@ config MIPS32_O32
> config MIPS32_N32
> bool "Kernel support for n32 binaries"
> depends on 64BIT
> + select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
> select COMPAT
> select MIPS32_COMPAT
> select SYSVIPC_COMPAT if SYSVIPC
> --
> 2.20.0
>
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 11/15] mips: fix n32 compat_ipc_parse_version
2019-01-10 19:39 ` Paul Burton
@ 2019-01-10 23:04 ` Arnd Bergmann
0 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-10 23:04 UTC (permalink / raw)
To: Paul Burton
Cc: dalias@libc.org, linux-ia64@vger.kernel.org,
linux-sh@vger.kernel.org, catalin.marinas@arm.com,
heiko.carstens@de.ibm.com, linux@dominikbrodowski.net,
linux-mips@vger.kernel.org, jcmvbkbc@gmail.com,
deepa.kernel@gmail.com, hpa@zytor.com, sparclinux@vger.kernel.org,
linux-s390@vger.kernel.org, dave@stgolabs.net,
y2038@lists.linaro.org, mpe@ellerman.id.au, deller@gmx.de,
x86@kernel.org, linux@armlinux.org.uk
On Thu, Jan 10, 2019 at 8:40 PM Paul Burton <paul.burton@mips.com> wrote:
> On Thu, Jan 10, 2019 at 05:24:31PM +0100, Arnd Bergmann wrote:
> > While reading through the sysvipc implementation, I noticed that the n32
> > semctl/shmctl/msgctl system calls behave differently based on whether
> > o32 support is enabled or not: Without o32, the IPC_64 flag passed by
> > user space is rejected but calls without that flag get IPC_64 behavior.
> >
> > As far as I can tell, this was inadvertently changed by a cleanup patch
> > but never noticed by anyone, possibly nobody has tried using sysvipc
> > on n32 after linux-3.19.
> >
> > Change it back to the old behavior now.
> >
> > Fixes: 78aaf956ba3a ("MIPS: Compat: Fix build error if CONFIG_MIPS32_COMPAT but no compat ABI.")
> > Cc: stable@vger.kernel.org
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > ---
> > As stated above, this was only found by inspection, the patch is not
> > tested. Please review accordingly.
>
> Nice catch! Would you prefer to merge this yourself, or that I take it
> through the mips tree?
Up to you: if you want to merge it for 5.0, I'll just drop it from my tree.
> If the former then:
>
> Acked-by: Paul Burton <paul.burton@mips.com>
Thanks!
> I suspect kernels configured with n32 support but no o32 support are
> probably not very common - for internal testing we currently always
> enable both.
Do you know of anyone actually still using n32 in production systems
with 4.x kernels? I wonder if it just fell out of popularity as the 64-bit
machines that used it either became large enough to want 64-bit
user space, or got replaced by arm64 or mips32 hardware.
Arnd
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038
[not found] ` <CAK8P3a2f4SCJXrm6HWO9UKY-akSW+ONNpOvQOtYbia_fRo9ciQ@mail.gmail.com>
@ 2019-01-10 23:14 ` Michael Cree
0 siblings, 0 replies; 19+ messages in thread
From: Michael Cree @ 2019-01-10 23:14 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Rich Felker, linux-ia64, Linux-sh list, Catalin Marinas,
Heiko Carstens, Dominik Brodowski, linux-mips, Max Filippov,
Deepa Dinamani, H. Peter Anvin, sparclinux, Joseph Myers,
linux-s390, Davidlohr Bueso, y2038 Mailman List, Michael Ellerman,
Helge Deller, the arch/x86 maintainers, Russell King - ARM Linux,
Ingo Molnar, Geert Uytterhoeven, Firoz Khan, Matt Turner
On Thu, Jan 10, 2019 at 11:42:32PM +0100, Arnd Bergmann wrote:
> On Thu, Jan 10, 2019 at 7:10 PM Joseph Myers <joseph@codesourcery.com> wrote:
> >
> > On Thu, 10 Jan 2019, Arnd Bergmann wrote:
> >
> > > - Add system calls that have not yet been integrated into all
> > > architectures but that we definitely want there.
> >
> > glibc has a note that alpha lacks statfs64, any plans for that?
>
> Good catch, I missed that because all other 64-bit architectures
> have a statfs() call with 64-bit fields. I see that it also has an
> osf_statfs64 structure and system call with lots of padding and some
> oddly sized fields: f_type, f_flags and f_namemax are only 16 bits
> wide, the rest is all 64-bit.
>
> Adding the regular statfs64() should be easy enough, we just need to
> decide which layout to use:
>
> a) use the currently unused 'struct statfs64' as provided by the
> alpha uapi headers, which has a 32-bit __statfs_word but
> 64-bit f_blocks, f_bfree, f_bavail, f_files, and f_ffree.
>
> b) copy asm-generic/statfs.h to the alpha asm/statfs.h and
> change statfs64 to have the regular layout that we use
> on all other 64-bit architectures, using all 64-bit fields.
>
> The other open question for alpha (as mentioned in one of the
> patches I sent) would be whether to add get{eg,eu,g,p,pp,u}id()
> with the regular calling conventions.
I would be interested in seeing those provided on Alpha. There are
a handful of projects choosing to sidestep glibc for these syscalls
and they break on Alpha. Such projects are never keen to include
special assembler code (because the extant syscalls on Alpha are not
C ABI compliant) to support a legacy arch.
Cheers
Michael.
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038
[not found] ` <CAK8P3a07yNiadLCJcA0Tyfo90YeQ0P2XF-wOEy9XAb8cDTFObw@mail.gmail.com>
@ 2019-01-11 8:07 ` Geert Uytterhoeven
0 siblings, 0 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2019-01-11 8:07 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Rich Felker, linux-ia64@vger.kernel.org, Linux-sh list,
Catalin Marinas, Heiko Carstens, Dominik Brodowski, linux-mips,
Max Filippov, Deepa Dinamani, H. Peter Anvin, sparclinux,
linux-s390, Davidlohr Bueso, y2038 Mailman List, Michael Ellerman,
Helge Deller, the arch/x86 maintainers, Russell King, Ingo Molnar,
Firoz Khan, Matt Turner, Fenghua Yu, Will Deacon
Hi Arnd,
On Thu, Jan 10, 2019 at 11:43 PM Arnd Bergmann <arnd@arndb.de> wrote:
> On Thu, Jan 10, 2019 at 7:11 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > On Thu, Jan 10, 2019 at 6:06 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > > On Thu, Jan 10, 2019 at 5:59 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > > > On Thu, Jan 10, 2019 at 5:26 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > > > > The system call tables have diverged a bit over the years, and a number
> > > > > of the recent additions never made it into all architectures, for one
> > > > > reason or another.
> > > > >
> > > > > This is an attempt to clean it up as far as we can without breaking
> > > > > compatibility, doing a number of steps:
> > > >
> > > > Thanks a lot!
> > > >
> > > > > - Add system calls that have not yet been integrated into all
> > > > > architectures but that we definitely want there.
> > > >
> > > > It looks like you missed wiring up io_pgetevents() on m68k.
> > > > Is that intentional?
> > >
> > > Yes, I thought I had described that somewhere but maybe I
> > > forgot: semtimedop() and io_pgetevents() get replaced with
> > > time64 versions in the follow-up, so I only added them in
> > > 64-bit architectures. If you think we should have both
> > > io_pgetevents() and io_pgetevents_time32() on all 32-bit
> > > architectures, I can add that as well.
> >
> > Thanks, sounds fine to me.
>
> Just to be sure, you mean it's fine to not add it, not that we should
> add it?
I'm fine with not having the legacy 32-bit ones.
Sorry for being unclear.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 11/15] mips: fix n32 compat_ipc_parse_version
2019-01-10 16:24 ` [PATCH 11/15] mips: fix n32 compat_ipc_parse_version Arnd Bergmann
2019-01-10 19:39 ` Paul Burton
@ 2019-01-11 19:25 ` Paul Burton
1 sibling, 0 replies; 19+ messages in thread
From: Paul Burton @ 2019-01-11 19:25 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Paul Burton, dalias@libc.org, linux-ia64@vger.kernel.org,
linux-sh@vger.kernel.org, catalin.marinas@arm.com,
will.deacon@arm.com, linux@dominikbrodowski.net,
linux-mips@vger.kernel.org, jcmvbkbc@gmail.com,
deepa.kernel@gmail.com, hpa@zytor.com, sparclinux@vger.kernel.org,
linux-s390@vger.kernel.org, dave@stgolabs.net,
y2038@lists.linaro.org, mpe@ellerman.id.au, deller@gmx.de,
x86@kernel.org
Hello,
Arnd Bergmann wrote:
> While reading through the sysvipc implementation, I noticed that the n32
> semctl/shmctl/msgctl system calls behave differently based on whether
> o32 support is enabled or not: Without o32, the IPC_64 flag passed by
> user space is rejected but calls without that flag get IPC_64 behavior.
>
> As far as I can tell, this was inadvertently changed by a cleanup patch
> but never noticed by anyone, possibly nobody has tried using sysvipc
> on n32 after linux-3.19.
>
> Change it back to the old behavior now.
>
> Fixes: 78aaf956ba3a ("MIPS: Compat: Fix build error if CONFIG_MIPS32_COMPAT but no compat ABI.")
> Cc: stable@vger.kernel.org
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Applied to mips-fixes.
Thanks,
Paul
[ This message was auto-generated; if you believe anything is incorrect
then please email paul.burton@mips.com to report it. ]
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 14/15] arch: add split IPC system calls where needed
[not found] ` <20190110162435.309262-15-arnd@arndb.de>
@ 2019-01-14 3:40 ` Michael Ellerman
[not found] ` <87pnsz28k2.fsf@concordia.ellerman.id.au>
1 sibling, 0 replies; 19+ messages in thread
From: Michael Ellerman @ 2019-01-14 3:40 UTC (permalink / raw)
To: y2038, linux-api, linux-kernel
Cc: dalias, linux-ia64, linux-sh, catalin.marinas, will.deacon, linux,
jcmvbkbc, deepa.kernel, hpa, sparclinux, linux-s390, dave, deller,
x86, linux, mingo, geert, firoz.khan, mattst88, fenghua.yu,
Arnd Bergmann, heiko.carstens, linux-m68k, ink, luto, tglx,
linux-arm-kernel, monstr, tony.luck, linux-parisc, linux-mips,
paul.burton, ebiederm, linux-alpha, schwidefsky, akpm,
linuxppc-dev
Hi Arnd,
Arnd Bergmann <arnd@arndb.de> writes:
> The IPC system call handling is highly inconsistent across architectures,
> some use sys_ipc, some use separate calls, and some use both. We also
> have some architectures that require passing IPC_64 in the flags, and
> others that set it implicitly.
>
> For the additon of a y2083 safe semtimedop() system call, I chose to only
> support the separate entry points, but that requires first supporting
> the regular ones with their own syscall numbers.
>
> The IPC_64 is now implied by the new semctl/shmctl/msgctl system
> calls even on the architectures that require passing it with the ipc()
> multiplexer.
>
> I'm not adding the new semtimedop() or semop() on 32-bit architectures,
> those will get implemented using the new semtimedop_time64() version
> that gets added along with the other time64 calls.
> Three 64-bit architectures (powerpc, s390 and sparc) get semtimedop().
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> One aspect here that might be a bit controversial is the use of
> the same system call numbers across all architectures, synchronizing
> all of them with the x86-32 numbers. With the new syscall.tbl
> files, I hope we can just keep doing that in the future, and no
> longer require the architecture maintainers to assign a number.
>
> This is mainly useful for implementers of the C libraries: if
> we can add future system calls everywhere at the same time, using
> a particular version of the kernel headers also guarantees that
> the system call number macro is visible.
> ---
> arch/m68k/kernel/syscalls/syscall.tbl | 11 +++++++++++
> arch/mips/kernel/syscalls/syscall_o32.tbl | 11 +++++++++++
> arch/powerpc/kernel/syscalls/syscall.tbl | 12 ++++++++++++
I have some changes I'd like to make to our syscall table that will
clash with this.
I'll try and send them today.
> diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl
> index db3bbb8744af..1bffab54ff35 100644
> --- a/arch/powerpc/kernel/syscalls/syscall.tbl
> +++ b/arch/powerpc/kernel/syscalls/syscall.tbl
> @@ -425,3 +425,15 @@
> 386 nospu pkey_mprotect sys_pkey_mprotect
> 387 nospu rseq sys_rseq
> 388 nospu io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents
> +# room for arch specific syscalls
> +392 64 semtimedop sys_semtimedop
> +393 common semget sys_semget
> +394 common semctl sys_semctl compat_sys_semctl
> +395 common shmget sys_shmget
> +396 common shmctl sys_shmctl compat_sys_shmctl
> +397 common shmat sys_shmat compat_sys_shmat
> +398 common shmdt sys_shmdt
> +399 common msgget sys_msgget
> +400 common msgsnd sys_msgsnd compat_sys_msgsnd
> +401 common msgrcv sys_msgrcv compat_sys_msgrcv
> +402 common msgctl sys_msgctl compat_sys_msgctl
We already have a gap at 366-377 from when we tried to add the split IPC
calls a few years back.
I guess I don't mind leaving that gap and using the common numbers.
But would be good to add a comment pointing out that we have room there
for arch specific syscalls as well.
cheers
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 15/15] arch: add pkey and rseq syscall numbers everywhere
[not found] ` <20190115115229.mcrmmpwdmjxf2cra@e5254000004ec.dyn.armlinux.org.uk>
@ 2019-01-15 14:47 ` Arnd Bergmann
0 siblings, 0 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-15 14:47 UTC (permalink / raw)
To: Russell King - ARM Linux admin
Cc: Rich Felker, linux-ia64, Linux-sh list, Catalin Marinas,
Heiko Carstens, Dominik Brodowski, linux-mips, Max Filippov,
Deepa Dinamani, H. Peter Anvin, sparclinux, linux-s390,
Davidlohr Bueso, y2038 Mailman List, Michael Ellerman,
Helge Deller, the arch/x86 maintainers, Ingo Molnar,
Geert Uytterhoeven, Firoz Khan, Matt Turner, Fenghua Yu,
Will Deacon
On Tue, Jan 15, 2019 at 12:52 PM Russell King - ARM Linux admin
<linux@armlinux.org.uk> wrote:
>
> On Thu, Jan 10, 2019 at 05:24:35PM +0100, Arnd Bergmann wrote:
> > Most architectures define system call numbers for the rseq and pkey system
> > calls, even when they don't support the features, and perhaps never will.
> >
> > Only a few architectures are missing these, so just define them anyway
> > for consistency. If we decide to add them later to one of these, the
> > system call numbers won't get out of sync then.
>
> I was lambasted for adding the pkey syscalls for 32-bit ARM in 2016,
> which will probably never support it. Why has the attitude towards
> this kind of thing now apparently become acceptable?
I was (and still am) a bit unsure about this one. A number of architectures
added the numbers that won't ever support them, but I wasn't sure if
any of those that didn't add them might need it later.
I tried to just go by the rule that anything that we list in
asm-generic/unistd.h
is probably important enough that we want to list it everywhere, even if
that includes a couple that we end up being rather architecture specific.
I'm happy to drop this patch if you or others feel that we're better off
without it though.
Arnd
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 14/15] arch: add split IPC system calls where needed
[not found] ` <87pnsz28k2.fsf@concordia.ellerman.id.au>
@ 2019-01-15 15:01 ` Arnd Bergmann
[not found] ` <CAK8P3a3eUzGDrJtV2ySpgHwjKHwZYr+1xHp6tChCt1gWi=mJ+g@mail.gmail.com>
2019-01-16 0:10 ` Michael Ellerman
0 siblings, 2 replies; 19+ messages in thread
From: Arnd Bergmann @ 2019-01-15 15:01 UTC (permalink / raw)
To: Michael Ellerman
Cc: Rich Felker, linux-ia64, Linux-sh list, Catalin Marinas,
Heiko Carstens, Dominik Brodowski, linux-mips, Max Filippov,
Deepa Dinamani, H. Peter Anvin, sparclinux, linux-s390,
Davidlohr Bueso, y2038 Mailman List, Helge Deller,
the arch/x86 maintainers, Russell King - ARM Linux, Ingo Molnar,
Geert Uytterhoeven, Firoz Khan, Matt Turner, Fenghua Yu,
Will Deacon
On Mon, Jan 14, 2019 at 4:59 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
> Arnd Bergmann <arnd@arndb.de> writes:
> > arch/m68k/kernel/syscalls/syscall.tbl | 11 +++++++++++
> > arch/mips/kernel/syscalls/syscall_o32.tbl | 11 +++++++++++
> > arch/powerpc/kernel/syscalls/syscall.tbl | 12 ++++++++++++
>
> I have some changes I'd like to make to our syscall table that will
> clash with this.
>
> I'll try and send them today.
Ok. Are those for 5.0 or 5.1? If they are intended for 5.0, it would be
nice for me to have a branch based on 5.0-rc1 that I can put
the other patches on top of.
> > diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl
> > index db3bbb8744af..1bffab54ff35 100644
> > --- a/arch/powerpc/kernel/syscalls/syscall.tbl
> > +++ b/arch/powerpc/kernel/syscalls/syscall.tbl
> > @@ -425,3 +425,15 @@
> > 386 nospu pkey_mprotect sys_pkey_mprotect
> > 387 nospu rseq sys_rseq
> > 388 nospu io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents
> > +# room for arch specific syscalls
> > +392 64 semtimedop sys_semtimedop
> > +393 common semget sys_semget
> > +394 common semctl sys_semctl compat_sys_semctl
> > +395 common shmget sys_shmget
> > +396 common shmctl sys_shmctl compat_sys_shmctl
> > +397 common shmat sys_shmat compat_sys_shmat
> > +398 common shmdt sys_shmdt
> > +399 common msgget sys_msgget
> > +400 common msgsnd sys_msgsnd compat_sys_msgsnd
> > +401 common msgrcv sys_msgrcv compat_sys_msgrcv
> > +402 common msgctl sys_msgctl compat_sys_msgctl
>
> We already have a gap at 366-377 from when we tried to add the split IPC
> calls a few years back.
>
> I guess I don't mind leaving that gap and using the common numbers as
> you've done here.
>
> But it would be good to add a comment pointing out that we have room
> at 366 for more arch specific syscalls as well.
Ah, I missed that. I've added this to my patch now:
index 5c0936d862fc..2ddfba536d5f 100644
--- a/arch/powerpc/kernel/syscalls/syscall.tbl
+++ b/arch/powerpc/kernel/syscalls/syscall.tbl
@@ -460,6 +460,7 @@
363 spu switch_endian sys_ni_syscall
364 common userfaultfd sys_userfaultfd
365 common membarrier sys_membarrier
+# 366-377 originally left for IPC, now unused
378 nospu mlock2 sys_mlock2
379 nospu copy_file_range sys_copy_file_range
380 common preadv2 sys_preadv2
compat_sys_preadv2
Arnd
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 14/15] arch: add split IPC system calls where needed
[not found] ` <CAK8P3a3eUzGDrJtV2ySpgHwjKHwZYr+1xHp6tChCt1gWi=mJ+g@mail.gmail.com>
@ 2019-01-15 16:35 ` Geert Uytterhoeven
2019-01-16 0:09 ` Michael Ellerman
1 sibling, 0 replies; 19+ messages in thread
From: Geert Uytterhoeven @ 2019-01-15 16:35 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Rich Felker, linux-ia64@vger.kernel.org, Linux-sh list,
Catalin Marinas, Heiko Carstens, Dominik Brodowski, linux-mips,
Max Filippov, Deepa Dinamani, H. Peter Anvin, sparclinux,
linux-s390, Davidlohr Bueso, y2038 Mailman List, Michael Ellerman,
Helge Deller, the arch/x86 maintainers, Russell King - ARM Linux,
Ingo Molnar, Firoz Khan, Matt Turner, Fenghua Yu
Hi Arnd,
On Tue, Jan 15, 2019 at 4:19 PM Arnd Bergmann <arnd@arndb.de> wrote:
> On Tue, Jan 15, 2019 at 4:01 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > On Mon, Jan 14, 2019 at 4:59 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
> > > Arnd Bergmann <arnd@arndb.de> writes:
> > > > arch/m68k/kernel/syscalls/syscall.tbl | 11 +++++++++++
> > > > arch/mips/kernel/syscalls/syscall_o32.tbl | 11 +++++++++++
> > > > arch/powerpc/kernel/syscalls/syscall.tbl | 12 ++++++++++++
> > >
> > > I have some changes I'd like to make to our syscall table that will
> > > clash with this.
> > >
> > > I'll try and send them today.
> >
> > Ok. Are those for 5.0 or 5.1? If they are intended for 5.0, it would be
> > nice for me to have a branch based on 5.0-rc1 that I can put
> > the other patches on top of.
>
> There is also another change that I considered:
>
> At the end of my series, we have a lot of entries like
>
> 245 32 clock_settime sys_clock_settime32
> 245 64 clock_settime sys_clock_settime
> 245 spu clock_settime sys_clock_settime
>
> which could be folded into
>
> 245 32 clock_settime sys_clock_settime32
> 245 spu64 clock_settime sys_clock_settime
>
> if we just add another option to the ABI field. Any thoughts on
> that?
So "spu64" would mean "spu + 64"?
That makes it more difficult to read, and to grep.
What about allowing multiple ABIs, separated by commas?
So that line would become:
245 spu,64 clock_settime sys_clock_settime
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 14/15] arch: add split IPC system calls where needed
[not found] ` <CAK8P3a3eUzGDrJtV2ySpgHwjKHwZYr+1xHp6tChCt1gWi=mJ+g@mail.gmail.com>
2019-01-15 16:35 ` Geert Uytterhoeven
@ 2019-01-16 0:09 ` Michael Ellerman
1 sibling, 0 replies; 19+ messages in thread
From: Michael Ellerman @ 2019-01-16 0:09 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Rich Felker, linux-ia64, Linux-sh list, Catalin Marinas,
Heiko Carstens, Dominik Brodowski, linux-mips, Max Filippov,
Deepa Dinamani, H. Peter Anvin, sparclinux, linux-s390,
Davidlohr Bueso, y2038 Mailman List, Helge Deller,
the arch/x86 maintainers, Russell King - ARM Linux, Ingo Molnar,
Geert Uytterhoeven, Firoz Khan, Matt Turner, Fenghua Yu,
Will Deacon
Arnd Bergmann <arnd@arndb.de> writes:
> On Tue, Jan 15, 2019 at 4:01 PM Arnd Bergmann <arnd@arndb.de> wrote:
>>
>> On Mon, Jan 14, 2019 at 4:59 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
>> > Arnd Bergmann <arnd@arndb.de> writes:
>> > > arch/m68k/kernel/syscalls/syscall.tbl | 11 +++++++++++
>> > > arch/mips/kernel/syscalls/syscall_o32.tbl | 11 +++++++++++
>> > > arch/powerpc/kernel/syscalls/syscall.tbl | 12 ++++++++++++
>> >
>> > I have some changes I'd like to make to our syscall table that will
>> > clash with this.
>> >
>> > I'll try and send them today.
>>
>> Ok. Are those for 5.0 or 5.1? If they are intended for 5.0, it would be
>> nice for me to have a branch based on 5.0-rc1 that I can put
>> the other patches on top of.
>
> There is also another change that I considered:
>
> At the end of my series, we have a lot of entries like
>
> 245 32 clock_settime sys_clock_settime32
> 245 64 clock_settime sys_clock_settime
> 245 spu clock_settime sys_clock_settime
>
> which could be folded into
>
> 245 32 clock_settime sys_clock_settime32
> 245 spu64 clock_settime sys_clock_settime
>
> if we just add another option to the ABI field. Any thoughts on
> that?
My series splits spu out into a separate field. So the above would be:
245 32 - clock_settime sys_clock_settime32
245 64 spu clock_settime sys_clock_settime
cheers
_______________________________________________
Y2038 mailing list
Y2038@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/y2038
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 14/15] arch: add split IPC system calls where needed
2019-01-15 15:01 ` Arnd Bergmann
[not found] ` <CAK8P3a3eUzGDrJtV2ySpgHwjKHwZYr+1xHp6tChCt1gWi=mJ+g@mail.gmail.com>
@ 2019-01-16 0:10 ` Michael Ellerman
1 sibling, 0 replies; 19+ messages in thread
From: Michael Ellerman @ 2019-01-16 0:10 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Rich Felker, linux-ia64, Linux-sh list, Catalin Marinas,
Heiko Carstens, Dominik Brodowski, linux-mips, Max Filippov,
Deepa Dinamani, H. Peter Anvin, sparclinux, linux-s390,
Davidlohr Bueso, y2038 Mailman List, Helge Deller,
the arch/x86 maintainers, Russell King - ARM Linux, Ingo Molnar,
Geert Uytterhoeven, Firoz Khan, Matt Turner, Fenghua Yu,
Will Deacon
Arnd Bergmann <arnd@arndb.de> writes:
> On Mon, Jan 14, 2019 at 4:59 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
>> Arnd Bergmann <arnd@arndb.de> writes:
>> > arch/m68k/kernel/syscalls/syscall.tbl | 11 +++++++++++
>> > arch/mips/kernel/syscalls/syscall_o32.tbl | 11 +++++++++++
>> > arch/powerpc/kernel/syscalls/syscall.tbl | 12 ++++++++++++
>>
>> I have some changes I'd like to make to our syscall table that will
>> clash with this.
>>
>> I'll try and send them today.
>
> Ok. Are those for 5.0 or 5.1? If they are intended for 5.0, it would be
> nice for me to have a branch based on 5.0-rc1 that I can put
> the other patches on top of.
For 5.1.
I can put them in a topic branch for you.
>> > diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl
>> > index db3bbb8744af..1bffab54ff35 100644
>> > --- a/arch/powerpc/kernel/syscalls/syscall.tbl
>> > +++ b/arch/powerpc/kernel/syscalls/syscall.tbl
>> > @@ -425,3 +425,15 @@
>> > 386 nospu pkey_mprotect sys_pkey_mprotect
>> > 387 nospu rseq sys_rseq
>> > 388 nospu io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents
>> > +# room for arch specific syscalls
>> > +392 64 semtimedop sys_semtimedop
>> > +393 common semget sys_semget
>> > +394 common semctl sys_semctl compat_sys_semctl
>> > +395 common shmget sys_shmget
>> > +396 common shmctl sys_shmctl compat_sys_shmctl
>> > +397 common shmat sys_shmat compat_sys_shmat
>> > +398 common shmdt sys_shmdt
>> > +399 common msgget sys_msgget
>> > +400 common msgsnd sys_msgsnd compat_sys_msgsnd
>> > +401 common msgrcv sys_msgrcv compat_sys_msgrcv
>> > +402 common msgctl sys_msgctl compat_sys_msgctl
>>
>> We already have a gap at 366-377 from when we tried to add the split IPC
>> calls a few years back.
>>
>> I guess I don't mind leaving that gap and using the common numbers as
>> you've done here.
>>
>> But it would be good to add a comment pointing out that we have room
>> at 366 for more arch specific syscalls as well.
>
> Ah, I missed that. I've added this to my patch now:
>
> index 5c0936d862fc..2ddfba536d5f 100644
> --- a/arch/powerpc/kernel/syscalls/syscall.tbl
> +++ b/arch/powerpc/kernel/syscalls/syscall.tbl
> @@ -460,6 +460,7 @@
> 363 spu switch_endian sys_ni_syscall
> 364 common userfaultfd sys_userfaultfd
> 365 common membarrier sys_membarrier
> +# 366-377 originally left for IPC, now unused
> 378 nospu mlock2 sys_mlock2
> 379 nospu copy_file_range sys_copy_file_range
> 380 common preadv2 sys_preadv2
> compat_sys_preadv2
Thanks.
cheers
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2019-01-16 0:10 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20190110162435.309262-1-arnd@arndb.de>
2019-01-10 16:24 ` [PATCH 01/15] ia64: add __NR_umount2 definition Arnd Bergmann
2019-01-10 16:24 ` [PATCH 02/15] ia64: add statx and io_pgetevents syscalls Arnd Bergmann
2019-01-10 16:24 ` [PATCH 03/15] ia64: assign syscall numbers for perf and seccomp Arnd Bergmann
2019-01-10 16:24 ` [PATCH 06/15] ARM: add migrate_pages() system call Arnd Bergmann
2019-01-10 16:24 ` [PATCH 11/15] mips: fix n32 compat_ipc_parse_version Arnd Bergmann
2019-01-10 19:39 ` Paul Burton
2019-01-10 23:04 ` Arnd Bergmann
2019-01-11 19:25 ` Paul Burton
[not found] ` <CAMuHMdXYP3=TRHYqddVRfbRRaj_Ou=wfoX6ohKM7XNAx-c2RXw@mail.gmail.com>
2019-01-10 17:06 ` [PATCH 00/15] arch: synchronize syscall tables in preparation for y2038 Arnd Bergmann
2019-01-10 18:11 ` Geert Uytterhoeven
[not found] ` <CAK8P3a07yNiadLCJcA0Tyfo90YeQ0P2XF-wOEy9XAb8cDTFObw@mail.gmail.com>
2019-01-11 8:07 ` Geert Uytterhoeven
2019-01-10 18:10 ` Joseph Myers
[not found] ` <CAK8P3a2f4SCJXrm6HWO9UKY-akSW+ONNpOvQOtYbia_fRo9ciQ@mail.gmail.com>
2019-01-10 23:14 ` Michael Cree
[not found] ` <20190110162435.309262-15-arnd@arndb.de>
2019-01-14 3:40 ` [PATCH 14/15] arch: add split IPC system calls where needed Michael Ellerman
[not found] ` <87pnsz28k2.fsf@concordia.ellerman.id.au>
2019-01-15 15:01 ` Arnd Bergmann
[not found] ` <CAK8P3a3eUzGDrJtV2ySpgHwjKHwZYr+1xHp6tChCt1gWi=mJ+g@mail.gmail.com>
2019-01-15 16:35 ` Geert Uytterhoeven
2019-01-16 0:09 ` Michael Ellerman
2019-01-16 0:10 ` Michael Ellerman
[not found] ` <20190110162435.309262-16-arnd@arndb.de>
[not found] ` <20190115115229.mcrmmpwdmjxf2cra@e5254000004ec.dyn.armlinux.org.uk>
2019-01-15 14:47 ` [PATCH 15/15] arch: add pkey and rseq syscall numbers everywhere Arnd Bergmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox