Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932589AbcKNOL6 (ORCPT ); Mon, 14 Nov 2016 09:11:58 -0500 Received: from mail-qt0-f171.google.com ([209.85.216.171]:36273 "EHLO mail-qt0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932518AbcKNOLz (ORCPT ); Mon, 14 Nov 2016 09:11:55 -0500 From: Pratyush Anand To: will.deacon@arm.com Cc: linux-arm-kernel@lists.infradead.org, labath@google.com, linux-kernel@vger.kernel.org, jan.kratochvil@redhat.com, onestero@redhat.com, Pratyush Anand Subject: [PATCH V3 0/5] ARM64: More flexible HW watchpoint Date: Mon, 14 Nov 2016 19:32:41 +0530 Message-Id: X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1587 Lines: 38 Currently, we do not support all the byte select option provided by ARM64 specs for a HW watchpoint. This patch set will help user to instrument a watchpoint with all possible byte select options. Changes since v2: - used __ffs() instead of ffs() - 1. Similarly for fls(). - fixed ptrace_hbp_get_addr() to report correct address to user space - handling stepping for inexact watchpoint as well now. Changes since v1: - Introduced a new patch 3/5 where it takes care of the situation when HW does not report a watchpoint hit with the address that matches one of the watchpoints set. - Added corresponding test case to test that functionality. Pavel Labath (1): arm64: hw_breakpoint: Handle inexact watchpoint addresses Pratyush Anand (4): hw_breakpoint: Allow watchpoint of length 3,5,6 and 7 arm64: Allow hw watchpoint at varied offset from base address arm64: Allow hw watchpoint of length 3,5,6 and 7 selftests: arm64: add test for unaligned/inexact watchpoint handling arch/arm64/include/asm/hw_breakpoint.h | 6 +- arch/arm64/kernel/hw_breakpoint.c | 153 +++++++++---- arch/arm64/kernel/ptrace.c | 7 +- include/uapi/linux/hw_breakpoint.h | 4 + tools/include/uapi/linux/hw_breakpoint.h | 4 + tools/testing/selftests/breakpoints/Makefile | 5 +- .../selftests/breakpoints/breakpoint_test_arm64.c | 236 +++++++++++++++++++++ 7 files changed, 372 insertions(+), 43 deletions(-) create mode 100644 tools/testing/selftests/breakpoints/breakpoint_test_arm64.c -- 2.7.4