aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/events/core.c2
-rw-r--r--kernel/events/hw_breakpoint.c5
2 files changed, 6 insertions, 1 deletions
diff --git a/kernel/events/core.c b/kernel/events/core.c
index 9dc297faf7c0..e0dcced282e4 100644
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -4961,7 +4961,7 @@ static DEFINE_PER_CPU(struct swevent_htable, swevent_htable);
4961 * sign as trigger. 4961 * sign as trigger.
4962 */ 4962 */
4963 4963
4964static u64 perf_swevent_set_period(struct perf_event *event) 4964u64 perf_swevent_set_period(struct perf_event *event)
4965{ 4965{
4966 struct hw_perf_event *hwc = &event->hw; 4966 struct hw_perf_event *hwc = &event->hw;
4967 u64 period = hwc->last_period; 4967 u64 period = hwc->last_period;
diff --git a/kernel/events/hw_breakpoint.c b/kernel/events/hw_breakpoint.c
index a64f8aeb5c1f..966a241e8616 100644
--- a/kernel/events/hw_breakpoint.c
+++ b/kernel/events/hw_breakpoint.c
@@ -612,6 +612,11 @@ static int hw_breakpoint_add(struct perf_event *bp, int flags)
612 if (!(flags & PERF_EF_START)) 612 if (!(flags & PERF_EF_START))
613 bp->hw.state = PERF_HES_STOPPED; 613 bp->hw.state = PERF_HES_STOPPED;
614 614
615 if (is_sampling_event(bp)) {
616 bp->hw.last_period = bp->hw.sample_period;
617 perf_swevent_set_period(bp);
618 }
619
615 return arch_install_hw_breakpoint(bp); 620 return arch_install_hw_breakpoint(bp);
616} 621}
617 622