| @@ -2476,7 +2476,7 @@ static int x86_pmu_event_init(struct perf_event *event) · 2475 unmodified lines |
| 2476 | | 2476 | |
| 2477 | if (READ_ONCE(x86_pmu.attr_rdpmc) && | 2477 | if (READ_ONCE(x86_pmu.attr_rdpmc) && |
| 2478 | !(event->hw.flags & PERF_X86_EVENT_LARGE_PEBS)) | 2478 | !(event->hw.flags & PERF_X86_EVENT_LARGE_PEBS)) |
| 2479 | event->hw.flags |= PERF_X86_EVENT_RDPMC_ALLOWED; | 2479 | event->hw.flags |= PERF_EVENT_FLAG_USER_READ_CNT; |
| 2480 | | 2480 | |
| 2481 | return err; | 2481 | return err; |
| 2482 | } | 2482 | } |
| @@ -2510,7 +2510,7 @@ void perf_clear_dirty_counters(void) · 27 unmodified lines |
| 2510 | | 2510 | |
| 2511 | static void x86_pmu_event_mapped(struct perf_event *event, struct mm_struct *mm) | 2511 | static void x86_pmu_event_mapped(struct perf_event *event, struct mm_struct *mm) |
| 2512 | { | 2512 | { |
| 2513 | if (!(event->hw.flags & PERF_X86_EVENT_RDPMC_ALLOWED)) | 2513 | if (!(event->hw.flags & PERF_EVENT_FLAG_USER_READ_CNT)) |
| 2514 | return; | 2514 | return; |
| 2515 | | 2515 | |
| 2516 | /* | 2516 | /* |
| @@ -2531,7 +2531,7 @@ static void x86_pmu_event_mapped(struct perf_event *event, struct mm_struct *mm) · 14 unmodified lines |
| 2531 | | 2531 | |
| 2532 | static void x86_pmu_event_unmapped(struct perf_event *event, struct mm_struct *mm) | 2532 | static void x86_pmu_event_unmapped(struct perf_event *event, struct mm_struct *mm) |
| 2533 | { | 2533 | { |
| 2534 | if (!(event->hw.flags & PERF_X86_EVENT_RDPMC_ALLOWED)) | 2534 | if (!(event->hw.flags & PERF_EVENT_FLAG_USER_READ_CNT)) |
| 2535 | return; | 2535 | return; |
| 2536 | | 2536 | |
| 2537 | if (atomic_dec_and_test(&mm->context.perf_rdpmc_allowed)) | 2537 | if (atomic_dec_and_test(&mm->context.perf_rdpmc_allowed)) |
| @@ -2542,7 +2542,7 @@ static int x86_pmu_event_idx(struct perf_event *event) · 4 unmodified lines |
| 2542 | { | 2542 | { |
| 2543 | struct hw_perf_event *hwc = &event->hw; | 2543 | struct hw_perf_event *hwc = &event->hw; |
| 2544 | | 2544 | |
| 2545 | if (!(hwc->flags & PERF_X86_EVENT_RDPMC_ALLOWED)) | 2545 | if (!(hwc->flags & PERF_EVENT_FLAG_USER_READ_CNT)) |
| 2546 | return 0; | 2546 | return 0; |
| 2547 | | 2547 | |
| 2548 | if (is_metric_idx(hwc->idx)) | 2548 | if (is_metric_idx(hwc->idx)) |
| @@ -2725,7 +2725,7 @@ void arch_perf_update_userpage(struct perf_event *event, · 176 unmodified lines |
| 2725 | userpg->cap_user_time = 0; | 2725 | userpg->cap_user_time = 0; |
| 2726 | userpg->cap_user_time_zero = 0; | 2726 | userpg->cap_user_time_zero = 0; |
| 2727 | userpg->cap_user_rdpmc = | 2727 | userpg->cap_user_rdpmc = |
| 2728 | !!(event->hw.flags & PERF_X86_EVENT_RDPMC_ALLOWED); | 2728 | !!(event->hw.flags & PERF_EVENT_FLAG_USER_READ_CNT); |
| 2729 | userpg->pmc_width = x86_pmu.cntval_bits; | 2729 | userpg->pmc_width = x86_pmu.cntval_bits; |
| 2730 | | 2730 | |
| 2731 | if (!using_native_sched_clock() || !sched_clock_stable()) | 2731 | if (!using_native_sched_clock() || !sched_clock_stable()) |