On Wed, Sep 22, 2021, Paolo Bonzini wrote: > On 22/09/21 02:05, Sean Christopherson wrote: > > @@ -1273,6 +1274,11 @@ static inline unsigned int perf_guest_handle_intel_pt_intr(void) > > } > > extern void perf_register_guest_info_callbacks(struct perf_guest_info_callbacks *cbs); > > extern void perf_unregister_guest_info_callbacks(struct perf_guest_info_callbacks *cbs); > > +#else > > +static inline unsigned int perf_guest_state(void) { return 0; } > > +static inline unsigned long perf_guest_get_ip(void) { return 0; } > > +static inline unsigned int perf_guest_handle_intel_pt_intr(void) { return 0; } > > +#endif /* CONFIG_GUEST_PERF_EVENTS */ > > Reviewed-by: Paolo Bonzini <pbonzini@xxxxxxxxxx> > > Having perf_guest_handle_intel_pt_intr in generic code is a bit off. Of > course it has to be in the struct, but the wrapper might be placed in > arch/x86/include/asm/perf_event.h as well (applies to patch 7 as well). Yeah, I went with this option purely to keep everything bundled together. I have no strong opinion.