From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752351AbcGOOv3 (ORCPT ); Fri, 15 Jul 2016 10:51:29 -0400 Received: from mail-qk0-f182.google.com ([209.85.220.182]:32818 "EHLO mail-qk0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751071AbcGOOv1 (ORCPT ); Fri, 15 Jul 2016 10:51:27 -0400 Subject: Re: [PATCH v15 01/10] arm64: Add HAVE_REGS_AND_STACK_ACCESS_API feature To: Catalin Marinas References: <1467995754-32508-1-git-send-email-dave.long@linaro.org> <1467995754-32508-2-git-send-email-dave.long@linaro.org> <20160715105701.GB14792@e104818-lin.cambridge.arm.com> Cc: Huang Shijie , James Morse , Marc Zyngier , Pratyush Anand , Sandeepa Prabhu , Will Deacon , William Cohen , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Steve Capper , Masami Hiramatsu , Li Bin , Jisheng Zhang , Mark Rutland , Daniel Thompson , Vladimir Murzin , Petr Mladek , Ard Biesheuvel , Jens Wiklander , Robin Murphy , Mark Brown , Suzuki K Poulose , Dave P Martin , Andrey Ryabinin , yalin wang , Yang Shi , Zi Shen Lim , John Blackwood , Andrew Morton , =?UTF-8?Q?Alex_Benn=c3=a9e?= , Adam Buchbinder , Christoffer Dall From: David Long Message-ID: <5788F86B.60305@linaro.org> Date: Fri, 15 Jul 2016 10:51:23 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <20160715105701.GB14792@e104818-lin.cambridge.arm.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 07/15/2016 06:57 AM, Catalin Marinas wrote: > On Fri, Jul 08, 2016 at 12:35:45PM -0400, David Long wrote: >> --- a/arch/arm64/include/asm/ptrace.h >> +++ b/arch/arm64/include/asm/ptrace.h >> @@ -74,6 +74,7 @@ >> #define COMPAT_PT_DATA_ADDR 0x10004 >> #define COMPAT_PT_TEXT_END_ADDR 0x10008 >> #ifndef __ASSEMBLY__ >> +#include >> >> /* sizeof(struct user) for AArch32 */ >> #define COMPAT_USER_SZ 296 >> @@ -119,6 +120,8 @@ struct pt_regs { >> u64 syscallno; >> }; >> >> +#define MAX_REG_OFFSET offsetof(struct pt_regs, pstate) >> + >> #define arch_has_single_step() (1) >> >> #ifdef CONFIG_COMPAT >> @@ -147,6 +150,55 @@ struct pt_regs { >> #define user_stack_pointer(regs) \ >> (!compat_user_mode(regs) ? (regs)->sp : (regs)->compat_sp) >> >> +extern int regs_query_register_offset(const char *name); >> +extern const char *regs_query_register_name(unsigned int offset); > > Is regs_query_register_offset() used anywhere? I grep'ed the kernel with > these patches applied but couldn't find any use. > It's referenced in kernel/trace/trace_probe.c. >> +extern bool regs_within_kernel_stack(struct pt_regs *regs, unsigned long addr); > > This one only seems to be used in arch/arm64/kernel/ptrace.c. Can we > make it static and remove the declaration? > OK. Thanks, -dl