diff options
author | Brian Gerst <brgerst@gmail.com> | 2020-03-13 22:51:41 +0300 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2020-03-21 18:03:24 +0300 |
commit | 121b32a58a3af89a780cf194ce3769fc4120e574 (patch) | |
tree | 17d48338ad3f310e8893d3f06603e21b64e683b0 /arch/x86/um | |
parent | 866128a996647097d599c6b91deb340d4da593a8 (diff) | |
download | linux-121b32a58a3af89a780cf194ce3769fc4120e574.tar.xz |
x86/entry/32: Use IA32-specific wrappers for syscalls taking 64-bit arguments
For the 32-bit syscall interface, 64-bit arguments (loff_t) are passed via
a pair of 32-bit registers. These register pairs end up in consecutive stack
slots, which matches the C ABI for 64-bit arguments. But when accessing the
registers directly from pt_regs, the wrapper needs to manually reassemble the
64-bit value. These wrappers already exist for 32-bit compat, so make them
available to 32-bit native in preparation for enabling pt_regs-based syscalls.
Signed-off-by: Brian Gerst <brgerst@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Dominik Brodowski <linux@dominikbrodowski.net>
Link: https://lkml.kernel.org/r/20200313195144.164260-16-brgerst@gmail.com
Diffstat (limited to 'arch/x86/um')
-rw-r--r-- | arch/x86/um/Makefile | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/um/Makefile b/arch/x86/um/Makefile index 33c51c064c77..77f70b969d14 100644 --- a/arch/x86/um/Makefile +++ b/arch/x86/um/Makefile @@ -21,6 +21,7 @@ obj-y += checksum_32.o syscalls_32.o obj-$(CONFIG_ELF_CORE) += elfcore.o subarch-y = ../lib/string_32.o ../lib/atomic64_32.o ../lib/atomic64_cx8_32.o +subarch-y += ../kernel/sys_ia32.o else |