Re: [PATCHv3 0/8] hw_breakpoint: Breakpoint modification fixes and new modify ioctl
From: Jiri Olsa
Date: Tue Mar 13 2018 - 05:50:56 EST
On Tue, Mar 13, 2018 at 10:28:01AM +0100, Jiri Olsa wrote:
> On Tue, Mar 13, 2018 at 07:37:47AM +0100, Ingo Molnar wrote:
> >
> > * Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> >
> > > Jiri Olsa (7):
> > > hw_breakpoint: Pass bp_type directly as find_slot_idx argument
> > > hw_breakpoint: Pass bp_type argument to __reserve_bp_slot|__release_bp_slot
> > > hw_breakpoint: Add modify_bp_slot function
> > > hw_breakpoint: Factor out __modify_user_hw_breakpoint function
> > > hw_breakpoint: Add perf_event_attr fields check in __modify_user_hw_breakpoint
> > > perf/core: Move perf_event_attr::sample_max_stack into perf_copy_attr
> > > perf tests: Add breakpoint accounting/modify test
> > >
> > > Milind Chabbi (1):
> > > perf/core: fast breakpoint modification via _IOC_MODIFY_ATTRIBUTES.
> > >
> > > include/linux/hw_breakpoint.h | 7 +++++
> > > include/uapi/linux/perf_event.h | 23 ++++++++-------
> > > kernel/events/core.c | 54 ++++++++++++++++++++++++++++++++--
> > > kernel/events/hw_breakpoint.c | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++---------------------
> > > tools/include/uapi/linux/perf_event.h | 23 ++++++++-------
> > > tools/perf/tests/Build | 1 +
> > > tools/perf/tests/bp_account.c | 195 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> > > tools/perf/tests/builtin-test.c | 4 +++
> > > tools/perf/tests/tests.h | 1 +
> > > 9 files changed, 365 insertions(+), 58 deletions(-)
> > > create mode 100644 tools/perf/tests/bp_account.c
> >
> > Note, there's a new PARISC build failure:
> >
> > home/mingo/tip/kernel/events/core.c:2858:2: error: implicit declaration of function 'modify_user_hw_breakpoint_check' [-Werror=implicit-function-declaration]
> > err = modify_user_hw_breakpoint_check(bp, attr, true);
> >
> > will only be able to push it out to -next once this is fixed.
>
> ok, checking on that
should be this one.. I'm checking on s390 which is also
without breakpoint support, I'll send full patch after
jirka
---
diff --git a/include/linux/hw_breakpoint.h b/include/linux/hw_breakpoint.h
index abeba094f080..6058c3844a76 100644
--- a/include/linux/hw_breakpoint.h
+++ b/include/linux/hw_breakpoint.h
@@ -101,8 +101,8 @@ static inline int
modify_user_hw_breakpoint(struct perf_event *bp,
struct perf_event_attr *attr) { return -ENOSYS; }
static inline int
-__modify_user_hw_breakpoint(struct perf_event *bp,
- struct perf_event_attr *attr) { return -ENOSYS; }
+modify_user_hw_breakpoint_check(struct perf_event *bp, struct perf_event_attr *attr,
+ bool check) { return -ENOSYS; }
static inline struct perf_event *
register_wide_hw_breakpoint_cpu(struct perf_event_attr *attr,