# HG changeset patch # User yamahata@xxxxxxxxxxxxx # Date 1164852093 -32400 # Node ID 77f0c899a30bef9dfd802051f0c866f50a20825e # Parent d8c32fa3e3a98fc900c86a563652d6b83a6e5ef1 compile xenoprof perfmon related hypercall even when CONFIG_PERFMON, CONFIG_OPROFILE, CONFIG_OPROFILE_MODULE are disabled. they should be compiled in vmlinux unconditionally because those might be called by other modules in theory. PATCHNAME: xenoprof_xencom Signed-off-by: Isaku Yamahata diff -r d8c32fa3e3a9 -r 77f0c899a30b linux-2.6-xen-sparse/arch/ia64/xen/xcom_hcall.c --- a/linux-2.6-xen-sparse/arch/ia64/xen/xcom_hcall.c Wed Nov 29 11:07:28 2006 -0700 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/xcom_hcall.c Thu Nov 30 11:01:33 2006 +0900 @@ -304,7 +304,6 @@ xencomm_hypercall_suspend(unsigned long return xencomm_arch_hypercall_suspend(xencomm_create_inline(&arg)); } -#if defined(CONFIG_OPROFILE) || defined(CONFIG_OPROFILE_MODULE) int xencomm_hypercall_xenoprof_op(int op, void *arg) { @@ -336,9 +335,7 @@ xencomm_hypercall_xenoprof_op(int op, vo return xencomm_arch_hypercall_xenoprof_op(op, xencomm_create_inline(arg)); } -#endif - -#ifdef CONFIG_PERFMON + int xencomm_hypercall_perfmon_op(unsigned long cmd, void* arg, unsigned long count) { @@ -366,4 +363,3 @@ xencomm_hypercall_perfmon_op(unsigned lo xencomm_create_inline(arg), count); } -#endif diff -r d8c32fa3e3a9 -r 77f0c899a30b linux-2.6-xen-sparse/arch/ia64/xen/xcom_mini.c --- a/linux-2.6-xen-sparse/arch/ia64/xen/xcom_mini.c Wed Nov 29 11:07:28 2006 -0700 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/xcom_mini.c Thu Nov 30 11:01:33 2006 +0900 @@ -323,7 +323,6 @@ xencomm_mini_hypercall_xen_version(int c } EXPORT_SYMBOL(xencomm_mini_hypercall_xen_version); -#if defined(CONFIG_OPROFILE) || defined(CONFIG_OPROFILE_MODULE) int xencomm_mini_hypercall_xenoprof_op(int op, void *arg) { @@ -372,9 +371,7 @@ xencomm_mini_hypercall_xenoprof_op(int o return xencomm_arch_hypercall_xenoprof_op(op, desc); } EXPORT_SYMBOL_GPL(xencomm_mini_hypercall_xenoprof_op); -#endif - -#ifdef CONFIG_PERFMON + int xencomm_mini_hypercall_perfmon_op(unsigned long cmd, void* arg, unsigned long count) @@ -418,4 +415,3 @@ xencomm_mini_hypercall_perfmon_op(unsign return xencomm_arch_hypercall_perfmon_op(cmd, desc, count); } EXPORT_SYMBOL_GPL(xencomm_mini_hypercall_perfmon_op); -#endif diff -r d8c32fa3e3a9 -r 77f0c899a30b linux-2.6-xen-sparse/include/asm-ia64/hypercall.h --- a/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h Wed Nov 29 11:07:28 2006 -0700 +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h Thu Nov 30 11:01:33 2006 +0900 @@ -399,7 +399,6 @@ HYPERVISOR_expose_p2m(unsigned long conv } #endif -#ifdef CONFIG_PERFMON static inline int xencomm_arch_hypercall_perfmon_op(unsigned long cmd, struct xencomm_handle *arg, @@ -408,7 +407,6 @@ xencomm_arch_hypercall_perfmon_op(unsign return _hypercall4(int, ia64_dom0vp_op, IA64_DOM0VP_perfmon, cmd, arg, count); } -#endif // for balloon driver #define HYPERVISOR_update_va_mapping(va, new_val, flags) (0) diff -r d8c32fa3e3a9 -r 77f0c899a30b linux-2.6-xen-sparse/include/asm-ia64/xen/xcom_hcall.h --- a/linux-2.6-xen-sparse/include/asm-ia64/xen/xcom_hcall.h Wed Nov 29 11:07:28 2006 -0700 +++ b/linux-2.6-xen-sparse/include/asm-ia64/xen/xcom_hcall.h Thu Nov 30 11:01:33 2006 +0900 @@ -46,14 +46,10 @@ extern unsigned long xencomm_hypercall_h extern int xencomm_hypercall_suspend(unsigned long srec); -#if defined(CONFIG_OPROFILE) || defined(CONFIG_OPROFILE_MODULE) extern int xencomm_hypercall_xenoprof_op(int op, void *arg); -#endif -#ifdef CONFIG_PERFMON extern int xencomm_hypercall_perfmon_op(unsigned long cmd, void* arg, unsigned long count); -#endif /* Using mini xencomm. */ extern int xencomm_mini_hypercall_console_io(int cmd, int count, char *str); @@ -77,14 +73,10 @@ extern int xencomm_mini_hypercall_memory extern unsigned long xencomm_mini_hypercall_hvm_op(int cmd, void *arg); -#if defined(CONFIG_OPROFILE) || defined(CONFIG_OPROFILE_MODULE) extern int xencomm_mini_hypercall_xenoprof_op(int op, void *arg); -#endif -#ifdef CONFIG_PERFMON extern int xencomm_mini_hypercall_perfmon_op(unsigned long cmd, void* arg, unsigned long count); -#endif /* For privcmd. Locally declare argument type to avoid include storm. Type coherency will be checked within privcmd.c */