Lines Matching defs:rapl_pmus
115 struct rapl_pmus {
136 static struct rapl_pmus *rapl_pmus;
150 return dieid < rapl_pmus->maxdie ? rapl_pmus->pmus[dieid] : NULL;
336 if (event->attr.type != rapl_pmus->pmu.type)
578 pmu->pmu = &rapl_pmus->pmu;
582 rapl_pmus->pmus[topology_logical_die_id(cpu)] = pmu;
666 for (i = 0; i < rapl_pmus->maxdie; i++)
667 kfree(rapl_pmus->pmus[i]);
668 kfree(rapl_pmus);
685 size = sizeof(*rapl_pmus) + maxdie * sizeof(struct rapl_pmu *);
686 rapl_pmus = kzalloc(size, GFP_KERNEL);
687 if (!rapl_pmus)
690 rapl_pmus->maxdie = maxdie;
691 rapl_pmus->pmu.attr_groups = rapl_attr_groups;
692 rapl_pmus->pmu.attr_update = rapl_attr_update;
693 rapl_pmus->pmu.task_ctx_nr = perf_invalid_context;
694 rapl_pmus->pmu.event_init = rapl_pmu_event_init;
695 rapl_pmus->pmu.add = rapl_pmu_event_add;
696 rapl_pmus->pmu.del = rapl_pmu_event_del;
697 rapl_pmus->pmu.start = rapl_pmu_event_start;
698 rapl_pmus->pmu.stop = rapl_pmu_event_stop;
699 rapl_pmus->pmu.read = rapl_pmu_event_read;
700 rapl_pmus->pmu.module = THIS_MODULE;
701 rapl_pmus->pmu.capabilities = PERF_PMU_CAP_NO_EXCLUDE;
845 ret = perf_pmu_register(&rapl_pmus->pmu, "power", -1);
864 perf_pmu_unregister(&rapl_pmus->pmu);