diff options
author | Mark Rutland <mark.rutland@arm.com> | 2018-07-11 15:56:43 +0200 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2018-07-12 15:43:09 +0200 |
commit | 4141c857fd09dbed480f021b3eece4f46c653161 (patch) | |
tree | 83da3f6fdfa03d51ef5b371a0604fdc64eb2126b /arch/arm64/kernel/Makefile | |
parent | arm64: introduce syscall_fn_t (diff) | |
download | linux-4141c857fd09dbed480f021b3eece4f46c653161.tar.xz linux-4141c857fd09dbed480f021b3eece4f46c653161.zip |
arm64: convert raw syscall invocation to C
As a first step towards invoking syscalls with a pt_regs argument,
convert the raw syscall invocation logic to C. We end up with a bit more
register shuffling, but the unified invocation logic means we can unify
the tracing paths, too.
Previously, assembly had to open-code calls to ni_sys() when the system
call number was out-of-bounds for the relevant syscall table. This case
is now handled by invoke_syscall(), and the assembly no longer need to
handle this case explicitly. This allows the tracing paths to be
simplified and unified, as we no longer need the __ni_sys_trace path and
the __sys_trace_return label.
This only converts the invocation of the syscall. The rest of the
syscall triage and tracing is left in assembly for now, and will be
converted in subsequent patches.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel/Makefile')
-rw-r--r-- | arch/arm64/kernel/Makefile | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm64/kernel/Makefile b/arch/arm64/kernel/Makefile index 0025f8691046..4e24d2244bd1 100644 --- a/arch/arm64/kernel/Makefile +++ b/arch/arm64/kernel/Makefile @@ -18,7 +18,8 @@ arm64-obj-y := debug-monitors.o entry.o irq.o fpsimd.o \ hyp-stub.o psci.o cpu_ops.o insn.o \ return_address.o cpuinfo.o cpu_errata.o \ cpufeature.o alternative.o cacheinfo.o \ - smp.o smp_spin_table.o topology.o smccc-call.o + smp.o smp_spin_table.o topology.o smccc-call.o \ + syscall.o extra-$(CONFIG_EFI) := efi-entry.o |