On Wed, Sep 22, 2021, Sean Christopherson wrote:
On Wed, Sep 22, 2021, Paolo Bonzini wrote:
quoted
On 22/09/21 02:05, Sean Christopherson wrote:
quoted
@@ -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@redhat.com>
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.
Scratch, that, I do have an opinion. perf_guest_handle_intel_pt_intr() is in
common code because the callbacks themselves and perf_get_guest_cbs() are defined
in linux/perf_event.h, _after_ asm/perf_event.h is included.
arch/x86/include/asm/perf_event.h is quite bereft of includes, so there's no
obvious landing spot for those two things, and adding a new header seems like
overkill.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel