From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1425516AbcBRLtM (ORCPT ); Thu, 18 Feb 2016 06:49:12 -0500 Received: from mail-pa0-f41.google.com ([209.85.220.41]:35077 "EHLO mail-pa0-f41.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1425241AbcBRLtK (ORCPT ); Thu, 18 Feb 2016 06:49:10 -0500 From: Zhi-zhou Zhang To: robin.murphy@arm.com, catalin.marinas@arm.com, will.deacon@arm.com Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, zhizhou Subject: [PATCH] arm64: add architecture specified current_pt_regs Date: Thu, 18 Feb 2016 19:48:35 +0800 Message-Id: <1455796115-7844-1-git-send-email-zhizhou.zh@gmail.com> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: zhizhou This patch is based on the implementation of arm. The generic current_pt_regs is implemented with current->stack. It need to access memory that would be too expensive. Signed-off-by: zhizhou --- arch/arm64/include/asm/ptrace.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/arm64/include/asm/ptrace.h b/arch/arm64/include/asm/ptrace.h index e9e5467..1865d54 100644 --- a/arch/arm64/include/asm/ptrace.h +++ b/arch/arm64/include/asm/ptrace.h @@ -185,5 +185,9 @@ static inline int valid_user_regs(struct user_pt_regs *regs) extern unsigned long profile_pc(struct pt_regs *regs); +#define current_pt_regs(void) ({ (struct pt_regs *) \ + ((current_stack_pointer | (THREAD_SIZE - 1)) - 0xf) - 1; \ +}) + #endif /* __ASSEMBLY__ */ #endif -- 2.5.0