|
@@ -105,11 +105,22 @@ TRACE_EVENT(kvm_s390_vcpu_start_stop,
|
|
|
{KVM_S390_PROGRAM_INT, "program interrupt"}, \
|
|
|
{KVM_S390_SIGP_SET_PREFIX, "sigp set prefix"}, \
|
|
|
{KVM_S390_RESTART, "sigp restart"}, \
|
|
|
+ {KVM_S390_INT_PFAULT_INIT, "pfault init"}, \
|
|
|
+ {KVM_S390_INT_PFAULT_DONE, "pfault done"}, \
|
|
|
+ {KVM_S390_MCHK, "machine check"}, \
|
|
|
+ {KVM_S390_INT_CLOCK_COMP, "clock comparator"}, \
|
|
|
+ {KVM_S390_INT_CPU_TIMER, "cpu timer"}, \
|
|
|
{KVM_S390_INT_VIRTIO, "virtio interrupt"}, \
|
|
|
{KVM_S390_INT_SERVICE, "sclp interrupt"}, \
|
|
|
{KVM_S390_INT_EMERGENCY, "sigp emergency"}, \
|
|
|
{KVM_S390_INT_EXTERNAL_CALL, "sigp ext call"}
|
|
|
|
|
|
+#define get_irq_name(__type) \
|
|
|
+ (__type > KVM_S390_INT_IO_MAX ? \
|
|
|
+ __print_symbolic(__type, kvm_s390_int_type) : \
|
|
|
+ (__type & KVM_S390_INT_IO_AI_MASK ? \
|
|
|
+ "adapter I/O interrupt" : "subchannel I/O interrupt"))
|
|
|
+
|
|
|
TRACE_EVENT(kvm_s390_inject_vm,
|
|
|
TP_PROTO(__u64 type, __u32 parm, __u64 parm64, int who),
|
|
|
TP_ARGS(type, parm, parm64, who),
|
|
@@ -131,8 +142,7 @@ TRACE_EVENT(kvm_s390_inject_vm,
|
|
|
TP_printk("inject%s: type:%x (%s) parm:%x parm64:%llx",
|
|
|
(__entry->who == 1) ? " (from kernel)" :
|
|
|
(__entry->who == 2) ? " (from user)" : "",
|
|
|
- __entry->inttype,
|
|
|
- __print_symbolic(__entry->inttype, kvm_s390_int_type),
|
|
|
+ __entry->inttype, get_irq_name(__entry->inttype),
|
|
|
__entry->parm, __entry->parm64)
|
|
|
);
|
|
|
|
|
@@ -156,8 +166,8 @@ TRACE_EVENT(kvm_s390_inject_vcpu,
|
|
|
|
|
|
TP_printk("inject (vcpu %d): type:%x (%s) parm:%x parm64:%llx",
|
|
|
__entry->id, __entry->inttype,
|
|
|
- __print_symbolic(__entry->inttype, kvm_s390_int_type),
|
|
|
- __entry->parm, __entry->parm64)
|
|
|
+ get_irq_name(__entry->inttype), __entry->parm,
|
|
|
+ __entry->parm64)
|
|
|
);
|
|
|
|
|
|
/*
|
|
@@ -184,8 +194,8 @@ TRACE_EVENT(kvm_s390_deliver_interrupt,
|
|
|
TP_printk("deliver interrupt (vcpu %d): type:%x (%s) " \
|
|
|
"data:%08llx %016llx",
|
|
|
__entry->id, __entry->inttype,
|
|
|
- __print_symbolic(__entry->inttype, kvm_s390_int_type),
|
|
|
- __entry->data0, __entry->data1)
|
|
|
+ get_irq_name(__entry->inttype), __entry->data0,
|
|
|
+ __entry->data1)
|
|
|
);
|
|
|
|
|
|
/*
|