• Hemant Kumar's avatar
    perf kvm/powerpc: Add support for HCALL reasons · 78e6c39b
    Hemant Kumar authored
    Powerpc provides hcall events that also provides insights into guest
    behaviour. Enhance perf kvm stat to record and analyze hcall events.
    
     - To trace hcall events :
      perf kvm stat record
    
     - To show the results :
      perf kvm stat report --event=hcall
    
    The result shows the number of hypervisor calls from the guest grouped
    by their respective reasons displayed with the frequency.
    
    This patch makes use of two additional tracepoints
    "kvm_hv:kvm_hcall_enter" and "kvm_hv:kvm_hcall_exit". To map the hcall
    codes to their respective names, it needs a mapping. Such mapping is
    added in this patch in book3s_hcalls.h.
    
     # pgrep qemu
    A sample output :
    19378
    60515
    
    2 VMs running.
    
     # perf kvm stat record -a
    ^C[ perf record: Woken up 1 times to write data ]
    [ perf record: Captured and wrote 4.153 MB perf.data.guest (39624
    samples) ]
    
     # perf kvm stat report -p 60515 --event=hcall
    
    Analyze events for all VMs, all VCPUs:
    
        HCALL-EVENT Samples Samples% Time% MinTime MaxTime  AvgTime
    
              H_IPI     822  66.08% 88.10% 0.63us  11.38us 2.05us (+- 1.42%)
         H_SEND_CRQ     144  11.58%  3.77% 0.41us   0.88us 0.50us (+- 1.47%)
       H_VIO_SIGNAL     118   9.49%  2.86% 0.37us   0.83us 0.47us (+- 1.43%)
    H_PUT_TERM_CHAR      76   6.11%  2.07% 0.37us   0.90us 0.52us (+- 2.43%)
    H_GET_TERM_CHAR      74   5.95%  2.23% 0.37us   1.70us 0.58us (+- 4.77%)
             H_RTAS       6   0.48%  0.85% 1.10us   9.25us 2.70us (+-48.57%)
          H_PERFMON       4   0.32%  0.12% 0.41us   0.96us 0.59us (+-20.92%)
    
    Total Samples:1244, Total events handled time:1916.69us.
    Signed-off-by: default avatarHemant Kumar <hemant@linux.vnet.ibm.com>
    Cc: Alexander Yarygin <yarygin@linux.vnet.ibm.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Scott  Wood <scottwood@freescale.com>
    Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
    Cc: linuxppc-dev@lists.ozlabs.org
    Link: http://lkml.kernel.org/r/1453962787-15376-4-git-send-email-hemant@linux.vnet.ibm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    78e6c39b
kvm-stat.c 3.85 KB