Il 13/03/2014 20:27, Michał Matoga ha scritto:
I'm working on system calls tracing using QEMU KVM. 1. Is it possible to force emulation of instructions when VM is running? Then I might be able to enable/disable KVM acceleration whenever I want to. 2. I know I can get full trace from QEMU without KVM (log in_asm). For example during booting kernel I collected log (https://www.dropbox.com/s/ho7ykw1rc2tl4eb/qemu.log). Of course, when I enable KVM, this method will not work. I used trace-cmd tool to collect KVM events (https://www.dropbox.com/s/nhvtztzilvepwt0/kvm.log) but KVM log contains only functions emulated by QEMU. Is there a possibility to know what functions are executed natively in CPU when KVM is enabled to get something like "full" log from QEMU without KVM?
No, neither is possible. Consider that forcing emulation while KVM is running would be hundreds of times slower than execution on the actual processor. It's simply too slow.
If you run QEMU with "-cpu host", you can use "perf" in the guest to see what's happening. Of course it will only be a statistical profile, not the full trace.
Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html