@@ -300,3 +300,5 @@ int kvmppc_emulate_instruction(struct kvm_run *run, struct kvm_vcpu *vcpu)
return emulated;
}
EXPORT_SYMBOL_GPL(kvmppc_emulate_instruction);
+
+EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_ppc_instr);
@@ -291,26 +291,6 @@ TRACE_EVENT(kvm_unmap_hva,
TP_printk("unmap hva 0x%lx\n", __entry->hva)
);
-TRACE_EVENT(kvm_ppc_instr,
- TP_PROTO(unsigned int inst, unsigned long _pc, unsigned int emulate),
- TP_ARGS(inst, _pc, emulate),
-
- TP_STRUCT__entry(
- __field( unsigned int, inst )
- __field( unsigned long, pc )
- __field( unsigned int, emulate )
- ),
-
- TP_fast_assign(
- __entry->inst = inst;
- __entry->pc = _pc;
- __entry->emulate = emulate;
- ),
-
- TP_printk("inst %u pc 0x%lx emulate %u\n",
- __entry->inst, __entry->pc, __entry->emulate)
-);
-
#endif /* _TRACE_KVM_H */
/* This part must be outside protection */
Commit 29577fc00ba4 ("KVM: PPC: HV: Remove generic instruction emulation") caused a build failure: arch/powerpc/kvm/kvm-pr.o:(__tracepoints+0xa8): multiple definition of `__tracepoint_kvm_ppc_instr' arch/powerpc/kvm/kvm.o:(__tracepoints+0x1c0): first defined here due to a duplicate definition of the tracepoint in trace.h and trace_pr.h. Because the tracepoint is still used by Book3S HV code, and because the PR code does include trace.h, just remove the duplicate definition from trace_pr.h, and export it from kvm.o. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- arch/powerpc/kvm/emulate.c | 2 ++ arch/powerpc/kvm/trace_pr.h | 20 -------------------- 2 files changed, 2 insertions(+), 20 deletions(-)