1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun #include <linux/ftrace.h> 3*4882a593Smuzhiyun #include <xen/interface/xen.h> 4*4882a593Smuzhiyun #include <xen/interface/xen-mca.h> 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun #define HYPERCALL(x) [__HYPERVISOR_##x] = "("#x")", 7*4882a593Smuzhiyun static const char *xen_hypercall_names[] = { 8*4882a593Smuzhiyun #include <asm/xen-hypercalls.h> 9*4882a593Smuzhiyun }; 10*4882a593Smuzhiyun #undef HYPERCALL 11*4882a593Smuzhiyun xen_hypercall_name(unsigned op)12*4882a593Smuzhiyunstatic const char *xen_hypercall_name(unsigned op) 13*4882a593Smuzhiyun { 14*4882a593Smuzhiyun if (op < ARRAY_SIZE(xen_hypercall_names) && xen_hypercall_names[op] != NULL) 15*4882a593Smuzhiyun return xen_hypercall_names[op]; 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun return ""; 18*4882a593Smuzhiyun } 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #define CREATE_TRACE_POINTS 21*4882a593Smuzhiyun #include <trace/events/xen.h> 22