• F
    selftests/resctrl: Fix incorrect parsing of iMC counters · d81343b5
    Fenghua Yu 提交于
    iMC (Integrated Memory Controller) counters are usually at
    "/sys/bus/event_source/devices/" and are named as "uncore_imc_<n>".
    num_of_imcs() function tries to count number of such iMC counters so that
    it could appropriately initialize required number of perf_attr structures
    that could be used to read these iMC counters.
    
    num_of_imcs() function assumes that all the directories under this path
    that start with "uncore_imc" are iMC counters. But, on some systems there
    could be directories named as "uncore_imc_free_running" which aren't iMC
    counters. Trying to read from such directories will result in "not found
    file" errors and MBM/MBA tests will fail.
    
    Hence, fix the logic in num_of_imcs() such that it looks at the first
    character after "uncore_imc_" to check if it's a numerical digit or not. If
    it's a digit then the directory represents an iMC counter, else, skip the
    directory.
    Reported-by: NReinette Chatre <reinette.chatre@intel.com>
    Tested-by: NBabu Moger <babu.moger@amd.com>
    Signed-off-by: NFenghua Yu <fenghua.yu@intel.com>
    Signed-off-by: NShuah Khan <skhan@linuxfoundation.org>
    d81343b5
resctrl_val.c 19.2 KB