• Andi Kleen's avatar
    perf jevents: Add support for parsing uncore json files · fedb2b51
    Andi Kleen authored
    Handle the "Unit" field, which is needed to find the right PMU for an
    event. We call it "pmu" and convert it to the perf pmu name with an
    uncore prefix.
    
    Handle the "ExtSel" field, which just extends the event mask with an
    additional bit.
    
    Handle the "Filter" field which adds parameters to the main event
    to configure filtering.
    
    Handle the "Unit" field which declares the unit the values should be
    scaled too (similar to what the kernel exports)
    
    Set up the "perpkg" field for uncore events so that perf knows they are
    per package (similar to what the kernel exports)
    
    Then output the fields into the pmu-events data structures which are
    compiled into perf.
    
    Filter out zero fields, except for the event itself.
    
    v2: Fix compilation. Add uncore_ prefix at pre-processing time.
        Move eventcode change to separate patch.
    
    v3: Remove extra __maybe_unused
    
    v4: dont duplicate aliases for cpu pmu events
    Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
    Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
    Link: http://lkml.kernel.org/r/20170128020345.19007-3-andi@firstfloor.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    fedb2b51
jevents.c 20.6 KB