From: AKASHI Takahiro <takahiro.akashi@linaro.org>
Date: Wed, 30 Apr 2014 09:51:31 +0000 (+0100)
Subject: arm64: Add regs_return_value() in syscall.h
X-Git-Tag: firefly_0821_release~3680^2~64^2
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=c5b2a660db70c8e591e8e2e3f7024073177b7124;p=firefly-linux-kernel-4.4.55.git

arm64: Add regs_return_value() in syscall.h

This macro, regs_return_value, is used mainly for audit to record system
call's results, but may also be used in test_kprobes.c.

Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: Richard Guy Briggs <rgb@redhat.com>
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit d34a3ebd8d25cf691a94fae66a957a480cf46430)
Signed-off-by: Alex Shi <alex.shi@linaro.org>
---

diff --git a/arch/arm64/include/asm/ptrace.h b/arch/arm64/include/asm/ptrace.h
index 41a71ee4c3df..f38a8aa58d4c 100644
--- a/arch/arm64/include/asm/ptrace.h
+++ b/arch/arm64/include/asm/ptrace.h
@@ -133,6 +133,11 @@ struct pt_regs {
 #define user_stack_pointer(regs) \
 	((regs)->sp)
 
+static inline unsigned long regs_return_value(struct pt_regs *regs)
+{
+	return regs->regs[0];
+}
+
 /*
  * Are the current registers suitable for user mode? (used to maintain
  * security in signal handlers)