xtensa: simplify xtensa_pmu_irq_handler
authorXu Wang <vulab@iscas.ac.cn>
Wed, 8 Jul 2020 06:20:23 +0000 (06:20 +0000)
committerMax Filippov <jcmvbkbc@gmail.com>
Wed, 8 Jul 2020 07:18:15 +0000 (00:18 -0700)
Use for_each_set_bit() instead of open-coding it to simplify the code.

Signed-off-by: Xu Wang <vulab@iscas.ac.cn>
Message-Id: <20200708062023.7986-1-vulab@iscas.ac.cn>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
arch/xtensa/kernel/perf_event.c

index 9bae79f70301339a20f08b5921d65d0ff6f76605..99fcd63ce597f6e781ec995afcacfef952463b2a 100644 (file)
@@ -362,9 +362,7 @@ irqreturn_t xtensa_pmu_irq_handler(int irq, void *dev_id)
        struct xtensa_pmu_events *ev = this_cpu_ptr(&xtensa_pmu_events);
        unsigned i;
 
-       for (i = find_first_bit(ev->used_mask, XCHAL_NUM_PERF_COUNTERS);
-            i < XCHAL_NUM_PERF_COUNTERS;
-            i = find_next_bit(ev->used_mask, XCHAL_NUM_PERF_COUNTERS, i + 1)) {
+       for_each_set_bit(i, ev->used_mask, XCHAL_NUM_PERF_COUNTERS) {
                uint32_t v = get_er(XTENSA_PMU_PMSTAT(i));
                struct perf_event *event = ev->event[i];
                struct hw_perf_event *hwc = &event->hw;