On Tue, 2020-08-11 at 23:31 +0800, Zhang Rui wrote: > There will be more platforms with different fixed energy units. > Enhance the code to support different rapl unit quirks for different > platforms.
This seems like one quirk per platform. Should multiple quirks on individual platforms be supported? > diff --git a/arch/x86/events/rapl.c b/arch/x86/events/rapl.c [] > @@ -130,11 +130,16 @@ struct rapl_pmus { > struct rapl_pmu *pmus[]; > }; > > +enum rapl_unit_quirk { > + RAPL_UNIT_QUIRK_NONE, > + RAPL_UNIT_QUIRK_INTEL_HSW, > +}; > + > struct rapl_model { > struct perf_msr *rapl_msrs; > unsigned long events; > unsigned int msr_power_unit; > - bool apply_quirk; > + enum rapl_unit_quirk unit_quirk; > };