When we failed to modify breakpoint, we ended up with disabled event. Mirror that in its 'attr.disabled', because some parts of the ptrace code depends on it.
Link: http://lkml.kernel.org/n/[email protected] Signed-off-by: Jiri Olsa <[email protected]> --- kernel/events/hw_breakpoint.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kernel/events/hw_breakpoint.c b/kernel/events/hw_breakpoint.c index 3e560d7609fd..eff7ab716139 100644 --- a/kernel/events/hw_breakpoint.c +++ b/kernel/events/hw_breakpoint.c @@ -523,8 +523,10 @@ int modify_user_hw_breakpoint(struct perf_event *bp, struct perf_event_attr *att perf_event_disable(bp); err = modify_user_hw_breakpoint_check(bp, attr, false); - if (err) + if (err) { + bp->attr.disabled = 1; return err; + } if (!attr->disabled) perf_event_enable(bp); -- 2.17.1

