[PATCH V2 0/4] perf: Add support for hardware breakpoint address masks

From: Jacob Shin
Date: Tue Apr 23 2013 - 03:58:00 EST


The following patchset adds address masks to existing perf hardware
breakpoint mechanism to allow trapping on an address range (currently
only single address) on supported architectures.

perf uapi is updated, x86 AMD implementation (for AMD Family 16h and
beyond) is provided, and perf tool has been extended to do:

$ perf stat -e mem:0x1000/0xf:w a.out
^^^
"don't care" bit mask

which will count writes to [0x1000 ~ 0x1010)

V2:
Per Oleg's suggestions:
* Moved testing of bp_addr_mask to validate_hw_breakpoint()
* Changed perf tool syntax to mem:<addr>[/addr_mask][:access]

Jacob Shin (2):
perf: Add hardware breakpoint address mask
perf/x86/amd: AMD implementation for hardware breakpoint address mask

Suravee Suthikulpanit (2):
perf tools: Add hardware breakpoint address mask event parser
perf tools: Add hardware breakpoint address mask test cases

arch/x86/include/asm/cpufeature.h | 2 ++
arch/x86/include/asm/debugreg.h | 5 ++++
arch/x86/include/asm/hw_breakpoint.h | 1 +
arch/x86/include/uapi/asm/msr-index.h | 6 ++++
arch/x86/kernel/cpu/amd.c | 19 +++++++++++++
arch/x86/kernel/hw_breakpoint.c | 16 +++++++++++
include/uapi/linux/perf_event.h | 5 +++-
kernel/events/hw_breakpoint.c | 9 ++++++
tools/perf/Documentation/perf-record.txt | 14 +++++++---
tools/perf/tests/parse-events.c | 45 ++++++++++++++++++++++++++++++
tools/perf/util/parse-events.c | 5 ++--
tools/perf/util/parse-events.h | 2 +-
tools/perf/util/parse-events.l | 1 +
tools/perf/util/parse-events.y | 24 ++++++++++++++--
14 files changed, 144 insertions(+), 10 deletions(-)

--
1.7.9.5


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/