• Kajol Jain's avatar
    powerpc/perf/hv-24x7: Update domain value check · 4ff3ba4d
    Kajol Jain authored
    Valid domain value is in range 1 to HV_PERF_DOMAIN_MAX. Current code has
    check for domain value greater than or equal to HV_PERF_DOMAIN_MAX. But
    the check for domain value 0 is missing.
    
    Fix this issue by adding check for domain value 0.
    
    Before:
      # ./perf stat -v -e hv_24x7/CPM_ADJUNCT_INST,domain=0,core=1/ sleep 1
      Using CPUID 00800200
      Control descriptor is not initialized
      Error:
      The sys_perf_event_open() syscall returned with 5 (Input/output error) for
      event (hv_24x7/CPM_ADJUNCT_INST,domain=0,core=1/).
      /bin/dmesg | grep -i perf may provide additional information.
    
      Result from dmesg:
      [   37.819387] hv-24x7: hcall failed: [0 0x60040000 0x100 0] => ret
      0xfffffffffffffffc (-4) detail=0x2000000 failing ix=0
    
    After:
      # ./perf stat -v -e hv_24x7/CPM_ADJUNCT_INST,domain=0,core=1/ sleep 1
      Using CPUID 00800200
      Control descriptor is not initialized
      Warning:
      hv_24x7/CPM_ADJUNCT_INST,domain=0,core=1/ event is not supported by the kernel.
      failed to read counter hv_24x7/CPM_ADJUNCT_INST,domain=0,core=1/
    
    Fixes: ebd4a5a3 ("powerpc/perf/hv-24x7: Minor improvements")
    Reported-by: default avatarKrishan Gopal Sarawast <krishang@linux.vnet.ibm.com>
    Signed-off-by: default avatarKajol Jain <kjain@linux.ibm.com>
    Tested-by: default avatarDisha Goel <disgoel@linux.ibm.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://msgid.link/20230825055601.360083-1-kjain@linux.ibm.com
    4ff3ba4d
hv-24x7.c 44 KB