Paolo Bonzini <pbonzini@xxxxxxxxxx> writes: > On 30/10/2018 11:00, Thomas Gleixner wrote: >> So at least we need a way for perf on the host to programmatically detect, >> that 'guest traces itself' is enabled, so it can inject that information >> into the host data and post processing can tell that. W/o something like >> that it's going to be a FAQ. > > In guest-tracing mode there will be already a TIP.PGD and TIP.PGE packet > respectively before vmentry and after vmexit, caused by the RTIT_CTL > WRMSRs in pt_guest_enter and pt_guest_exit. The target IP of the > packets will come from kvm-intel.ko. Most people aren't tracing the kernel, so they'd just get a PGD with no address and a PGE after the kvm is done without any indication of what happened in between. > In system mode instead you get a Paging Information Packet on > vmentry/vmexit, with bit 0 set in the third byte. You won't get it if > guest-side tracing is on (because tracing has been disabled by > pt_guest_enter and won't be re-enabled until pt_guest_exit). I don't > think it's correct to "fake" the PIP in guest-tracing mode, because > TIP.PGD should be followed immediately by TIP.PGE. Indeed, we should most definitely not fake PIP. Perf has RECORD_AUX, which already has PARTIAL flag that was introduced specifically because of kvm. Regards, -- Alex