> Subject: Re: Profiling > > On 19/10/12 10:13, Sundaram, Senthilkumar wrote: >> I would like to profile some of the key Hyp routines including >> World-Switch, TLB Flush etc. >> >> >> >> I am planning to use cycle counters to profile these routines. Has >> anything like this been done before? Any suggestions. > > I've played with perf in the recent past, and managed to find some > interesting results. You'll need a couple of patches on top of > kvm-arm-master: > > git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git kvm-perf > > With these patches, you can use "perf kvm". We do not support stack > unwinding in the guest though. Checking out kvm-perf gives me the following compile errors: $ make ARCH=arm zImage CHK include/linux/version.h CHK include/generated/utsrelease.h make[1]: `include/generated/mach-types.h' is up to date. CALL scripts/checksyscalls.sh CHK include/generated/compile.h CC arch/arm/kvm/perf.o In file included from /code/arm-platforms/arch/arm/include/asm/kvm_vgic.h:24:0, from /code/arm-platforms/arch/arm/include/asm/kvm_host.h:25, from arch/arm/kvm/perf.c:24: include/linux/kvm_host.h:215:23: error: field ‘stat’ has incomplete type include/linux/kvm_host.h:247:23: error: field ‘arch’ has incomplete type include/linux/kvm_host.h:322:34: error: ‘KVM_MEMORY_SLOTS’ undeclared here (not in a function) include/linux/kvm_host.h:322:34: error: ‘KVM_PRIVATE_MEM_SLOTS’ undeclared here (not in a function) include/linux/kvm_host.h:336:25: error: ‘KVM_MAX_VCPUS’ undeclared here (not in a function) include/linux/kvm_host.h:349:21: error: field ‘stat’ has incomplete type include/linux/kvm_host.h:350:18: error: field ‘arch’ has incomplete type include/linux/kvm_host.h: In function ‘gfn_to_index’: include/linux/kvm_host.h:794:2: error: implicit declaration of function ‘KVM_HPAGE_GFN_SHIFT’ [-Werror=implicit-function-declaration] arch/arm/kvm/perf.c: In function ‘vcpu_pc’: /code/arm-platforms/arch/arm/include/asm/kvm_emulate.h:60:1: warning: control reaches end of non-void function [-Wreturn-type] arch/arm/kvm/perf.c: In function ‘vcpu_cpsr’: /code/arm-platforms/arch/arm/include/asm/kvm_emulate.h:65:1: warning: control reaches end of non-void function [-Wreturn-type] cc1: some warnings being treated as errors make[1]: *** [arch/arm/kvm/perf.o] Error 1 make: *** [arch/arm/kvm] Error 2 Am I missing a patch or something? Cheers. _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm