Stefan Hajnoczi 0d460ffc09 KVM: Use __print_symbolic() for vmexit tracepoints
The vmexit tracepoints format the exit_reason to make it human-readable.
Since the exit_reason depends on the instruction set (vmx or svm),
formatting is handled with ftrace_print_symbols_seq() by referring to
the appropriate exit reason table.

However, the ftrace_print_symbols_seq() function is not meant to be used
directly in tracepoints since it does not export the formatting table
which userspace tools like trace-cmd and perf use to format traces.

In practice perf dies when formatting vmexit-related events and
trace-cmd falls back to printing the numeric value (with extra
formatting code in the kvm plugin to paper over this limitation).  Other
userspace consumers of vmexit-related tracepoints would be in similar
trouble.

To avoid significant changes to the kvm_exit tracepoint, this patch
moves the vmx and svm exit reason tables into arch/x86/kvm/trace.h and
selects the right table with __print_symbolic() depending on the
instruction set.  Note that __print_symbolic() is designed for exporting
the formatting table to userspace and allows trace-cmd and perf to work.

Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2011-09-25 19:17:59 +03:00
..
2011-05-02 14:18:52 +02:00
2011-07-26 16:49:47 -07:00
2009-01-29 14:16:51 +01:00
2011-01-13 08:03:25 -08:00
2011-02-23 22:27:52 +01:00
2009-12-05 09:10:12 -08:00
2011-03-18 10:39:30 +01:00
2011-02-14 12:08:28 +01:00
2011-08-04 16:13:49 -07:00
2011-05-02 17:24:48 +02:00
2011-05-09 12:14:29 -07:00
2010-02-16 21:22:26 -08:00
2011-06-05 21:30:32 +02:00
2011-05-16 14:55:57 -04:00
2011-04-18 09:26:48 -07:00
2010-10-26 16:52:08 -07:00
2011-07-26 16:49:47 -07:00
2010-05-07 17:13:04 -07:00
2011-01-07 10:03:50 -05:00
2009-03-27 14:43:57 -04:00
2009-08-27 00:35:56 +02:00
2011-02-24 14:52:18 +01:00
2010-03-10 13:23:34 +01:00
2010-10-26 16:52:08 -07:00
2009-01-21 17:26:06 +09:00
2011-02-23 22:27:52 +01:00
2010-08-14 22:26:51 +02:00
2011-07-26 16:49:43 -07:00
2009-06-13 15:37:30 +02:00
2011-07-22 14:39:50 +09:30
2011-05-24 14:33:35 +02:00
2010-06-09 11:12:36 +02:00
2011-07-26 16:49:47 -07:00
2011-07-26 16:49:47 -07:00
2011-07-26 16:49:47 -07:00
2010-05-07 17:13:04 -07:00
2011-03-18 10:39:30 +01:00
2010-06-29 12:12:59 +02:00
2011-05-10 15:43:32 -07:00
2010-11-01 15:38:34 -04:00
2010-10-26 16:52:08 -07:00
2011-01-13 17:32:44 -08:00
2011-06-05 21:30:33 +02:00
2011-01-13 17:32:44 -08:00
2009-02-02 23:27:09 +05:30
2011-03-15 15:34:15 -07:00
2011-07-26 16:49:47 -07:00
2010-02-12 09:42:39 -08:00
2011-03-18 10:39:30 +01:00
2011-07-26 16:49:47 -07:00
2009-06-15 12:40:02 +02:00
2009-01-31 00:19:32 +05:30
2011-07-26 16:49:47 -07:00
2011-03-23 19:47:18 -07:00
2011-05-20 12:50:29 -07:00
2011-05-20 12:50:29 -07:00
2011-05-28 10:48:39 -07:00
2011-07-12 11:45:16 +03:00
2011-06-05 21:30:32 +02:00
2009-06-15 12:40:02 +02:00