diff options
Diffstat (limited to 'arch/x86/events/intel/ds.c')
| -rw-r--r-- | arch/x86/events/intel/ds.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/x86/events/intel/ds.c b/arch/x86/events/intel/ds.c index be202390bbd3..9dfeeeca0ea8 100644 --- a/arch/x86/events/intel/ds.c +++ b/arch/x86/events/intel/ds.c | |||
| @@ -1389,9 +1389,13 @@ static void intel_pmu_drain_pebs_nhm(struct pt_regs *iregs) | |||
| 1389 | continue; | 1389 | continue; |
| 1390 | 1390 | ||
| 1391 | /* log dropped samples number */ | 1391 | /* log dropped samples number */ |
| 1392 | if (error[bit]) | 1392 | if (error[bit]) { |
| 1393 | perf_log_lost_samples(event, error[bit]); | 1393 | perf_log_lost_samples(event, error[bit]); |
| 1394 | 1394 | ||
| 1395 | if (perf_event_account_interrupt(event)) | ||
| 1396 | x86_pmu_stop(event, 0); | ||
| 1397 | } | ||
| 1398 | |||
| 1395 | if (counts[bit]) { | 1399 | if (counts[bit]) { |
| 1396 | __intel_pmu_pebs_event(event, iregs, base, | 1400 | __intel_pmu_pebs_event(event, iregs, base, |
| 1397 | top, bit, counts[bit]); | 1401 | top, bit, counts[bit]); |
