Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp2635433pxa; Mon, 24 Aug 2020 21:41:45 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwgMiyjIB+IUbyh3vQw9mZW4TlNLPrImexj+xdTWliQPY9kpMlwFAAGW3ZoNL0kC0U9nS6y X-Received: by 2002:a17:906:394c:: with SMTP id g12mr7647084eje.255.1598330505489; Mon, 24 Aug 2020 21:41:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598330505; cv=none; d=google.com; s=arc-20160816; b=H//Z38t045OMySGsG5Q1IXKr1S6NZi9oJc3lNapdHFP3+AP0iBWEZldOnQEMAe9Brq z3qVvzRxcyDsfS8fCcrToc/JQ8b5zZ6sn7iOTU/AG9uGEE2mYs9Q7q71JED1MsBLOvPR 4U7O6NWPRfL9EzdmT/GJJihQLgkCYaYsAEBw31siXKodLkJp7tfyUZ26C6twUzupJHtj gxDuUWajT/6TlUM+VTzF5PwiJSN4wd5j+guOR345tWX5OgX43qphqzX3ZDQot+arhH5F JcFmrsWramyMvvj+12CWMSUjoMdvpS+ISPItVJhZcfDibedKLQf0TuDpGKp69sCsaFtZ C3Mg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=eTv4eDDzdAcCNwcF32va34swuL93aDFIkhfN2V8mRag=; b=DMH/UBfyVoEGjV+oUjFe6LDhiTJOML0jkzgBIrk6OmzvK7B8n6KSgprwf+wdBal8AI dR1AM5PE4tiO80dVw70rZgb4/diI4Ut1Fd17QgY8I4xRay1+GHxwQh1G+ou3iE2pa8ms Sadk5rCJF8wgjYIwYPcTXO1OWMZJds9+3MffCpcB2JLxoH5HPP+jtC5LEo1PORjA7SHz 68iWw/iIhc0EPdERXdd/hVNcXrgUFFe0Vj46yzo8oCm3BH/wR9r8TA2AW3x9XucawLzZ ecj/VpgE5pUf7WHewV2Edoy+aDheo51uVR8/u/RUZtid+pG1G8jGzZfsWHTRzgZWz95W dkLw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ibm.com header.s=pp1 header.b=bt1E8Xm2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t4si272716ejd.29.2020.08.24.21.41.23; Mon, 24 Aug 2020 21:41:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@ibm.com header.s=pp1 header.b=bt1E8Xm2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728775AbgHYEhQ (ORCPT + 99 others); Tue, 25 Aug 2020 00:37:16 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:25248 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728696AbgHYEhJ (ORCPT ); Tue, 25 Aug 2020 00:37:09 -0400 Received: from pps.filterd (m0098394.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 07P4WDiD107591; Tue, 25 Aug 2020 00:36:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=eTv4eDDzdAcCNwcF32va34swuL93aDFIkhfN2V8mRag=; b=bt1E8Xm2S8Q9HtIo+pEEvrsXV1JVHIYhJADo7RxoXciLdT59fZddlpDNO8/JCPVyoCCq C7QlAmf4l5CPpDkCQl3E2sG0DhkiHEcYBkB6k+tzlmm2bD9+l0eJrC1X76kHUC55HKsb q3dEfN5KV0VPoOM1s3lhrUcfBq3P7DG4XDbdXPHpOIrOMN8MlhXSSWrnKYh6ysB5ThuX SB+y33KtErRCC8evifaR//OgD4TgA1LLXvQGvUhJ90ay6Qk0/d+mvHXyaAubtxn3DrLL jtEDM63F0pUgt8gCf0419f8odOuCQHnAaCM3RppYoKvIOJF6AugJJe3+mVvuZuLus8gJ rA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com with ESMTP id 334tnuhbwx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 25 Aug 2020 00:36:50 -0400 Received: from m0098394.ppops.net (m0098394.ppops.net [127.0.0.1]) by pps.reinject (8.16.0.36/8.16.0.36) with SMTP id 07P4WF7q107882; Tue, 25 Aug 2020 00:36:50 -0400 Received: from ppma04ams.nl.ibm.com (63.31.33a9.ip4.static.sl-reverse.com [169.51.49.99]) by mx0a-001b2d01.pphosted.com with ESMTP id 334tnuhbwa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 25 Aug 2020 00:36:50 -0400 Received: from pps.filterd (ppma04ams.nl.ibm.com [127.0.0.1]) by ppma04ams.nl.ibm.com (8.16.0.42/8.16.0.42) with SMTP id 07P4X7oV027932; Tue, 25 Aug 2020 04:36:48 GMT Received: from b06avi18878370.portsmouth.uk.ibm.com (b06avi18878370.portsmouth.uk.ibm.com [9.149.26.194]) by ppma04ams.nl.ibm.com with ESMTP id 33498u8xqg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 25 Aug 2020 04:36:47 +0000 Received: from d06av26.portsmouth.uk.ibm.com (d06av26.portsmouth.uk.ibm.com [9.149.105.62]) by b06avi18878370.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 07P4ajXA61276588 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 25 Aug 2020 04:36:45 GMT Received: from d06av26.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F06CBAE04D; Tue, 25 Aug 2020 04:36:44 +0000 (GMT) Received: from d06av26.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 33730AE051; Tue, 25 Aug 2020 04:36:42 +0000 (GMT) Received: from bangoria.ibmuc.com (unknown [9.199.33.167]) by d06av26.portsmouth.uk.ibm.com (Postfix) with ESMTP; Tue, 25 Aug 2020 04:36:41 +0000 (GMT) From: Ravi Bangoria To: mpe@ellerman.id.au, christophe.leroy@c-s.fr Cc: ravi.bangoria@linux.ibm.com, mikey@neuling.org, paulus@samba.org, naveen.n.rao@linux.vnet.ibm.com, pedromfc@linux.ibm.com, rogealve@linux.ibm.com, jniethe5@gmail.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: [PATCH v5 7/8] powerpc/watchpoint/ptrace: Introduce PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 Date: Tue, 25 Aug 2020 10:06:16 +0530 Message-Id: <20200825043617.1073634-8-ravi.bangoria@linux.ibm.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200825043617.1073634-1-ravi.bangoria@linux.ibm.com> References: <20200825043617.1073634-1-ravi.bangoria@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TM-AS-GCONF: 00 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235,18.0.687 definitions=2020-08-24_12:2020-08-24,2020-08-24 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxlogscore=999 clxscore=1015 priorityscore=1501 mlxscore=0 impostorscore=0 adultscore=0 spamscore=0 phishscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2008250030 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 can be used to determine whether we are running on an ISA 3.1 compliant machine. Which is needed to determine DAR behaviour, 512 byte boundary limit etc. This was requested by Pedro Miraglia Franco de Carvalho for extending watchpoint features in gdb. Note that availability of 2nd DAWR is independent of this flag and should be checked using ppc_debug_info->num_data_bps. Signed-off-by: Ravi Bangoria --- Documentation/powerpc/ptrace.rst | 1 + arch/powerpc/include/uapi/asm/ptrace.h | 1 + arch/powerpc/kernel/ptrace/ptrace-noadv.c | 2 ++ 3 files changed, 4 insertions(+) diff --git a/Documentation/powerpc/ptrace.rst b/Documentation/powerpc/ptrace.rst index 864d4b6dddd1..77725d69eb4a 100644 --- a/Documentation/powerpc/ptrace.rst +++ b/Documentation/powerpc/ptrace.rst @@ -46,6 +46,7 @@ features will have bits indicating whether there is support for:: #define PPC_DEBUG_FEATURE_DATA_BP_RANGE 0x4 #define PPC_DEBUG_FEATURE_DATA_BP_MASK 0x8 #define PPC_DEBUG_FEATURE_DATA_BP_DAWR 0x10 + #define PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 0x20 2. PTRACE_SETHWDEBUG diff --git a/arch/powerpc/include/uapi/asm/ptrace.h b/arch/powerpc/include/uapi/asm/ptrace.h index f5f1ccc740fc..7004cfea3f5f 100644 --- a/arch/powerpc/include/uapi/asm/ptrace.h +++ b/arch/powerpc/include/uapi/asm/ptrace.h @@ -222,6 +222,7 @@ struct ppc_debug_info { #define PPC_DEBUG_FEATURE_DATA_BP_RANGE 0x0000000000000004 #define PPC_DEBUG_FEATURE_DATA_BP_MASK 0x0000000000000008 #define PPC_DEBUG_FEATURE_DATA_BP_DAWR 0x0000000000000010 +#define PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 0x0000000000000020 #ifndef __ASSEMBLY__ diff --git a/arch/powerpc/kernel/ptrace/ptrace-noadv.c b/arch/powerpc/kernel/ptrace/ptrace-noadv.c index 081c39842d84..1d0235db3c1b 100644 --- a/arch/powerpc/kernel/ptrace/ptrace-noadv.c +++ b/arch/powerpc/kernel/ptrace/ptrace-noadv.c @@ -57,6 +57,8 @@ void ppc_gethwdinfo(struct ppc_debug_info *dbginfo) } else { dbginfo->features = 0; } + if (cpu_has_feature(CPU_FTR_ARCH_31)) + dbginfo->features |= PPC_DEBUG_FEATURE_DATA_BP_ARCH_31; } int ptrace_get_debugreg(struct task_struct *child, unsigned long addr, -- 2.26.2