diff options
author | Keir Fraser <keir@xen.org> | 2012-06-20 09:37:29 +0100 |
---|---|---|
committer | Keir Fraser <keir@xen.org> | 2012-06-20 09:37:29 +0100 |
commit | 381b11e87376cc584f6ebc1962629443ae5a9841 (patch) | |
tree | 59fab5c0e980dcad3a3de01ed9f50adeab03f09a | |
parent | 0e716008e14d4eff7bc3ebb0663ea46ba39d4c49 (diff) | |
download | xen-381b11e87376cc584f6ebc1962629443ae5a9841.tar.gz xen-381b11e87376cc584f6ebc1962629443ae5a9841.tar.bz2 xen-381b11e87376cc584f6ebc1962629443ae5a9841.zip |
x86: Make asmlinkage explicitly a no-op, and avoid usage in arch/x86
Signed-off-by: Keir Fraser <keir@xen.org>
xen-unstable changeset: 24511:a141f6d64916
xen-unstable date: Sun Jan 15 22:02:35 2012 +0000
-rw-r--r-- | xen/arch/x86/acpi/power.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/hvm/svm/asid.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/hvm/svm/intr.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/hvm/svm/svm.c | 4 | ||||
-rw-r--r-- | xen/arch/x86/hvm/vmx/intr.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/hvm/vmx/vmx.c | 6 | ||||
-rw-r--r-- | xen/arch/x86/irq.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/trace.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/traps.c | 30 | ||||
-rw-r--r-- | xen/arch/x86/x86_32/traps.c | 4 | ||||
-rw-r--r-- | xen/arch/x86/x86_64/traps.c | 12 | ||||
-rw-r--r-- | xen/include/asm-x86/config.h | 6 | ||||
-rw-r--r-- | xen/include/asm-x86/irq.h | 2 | ||||
-rw-r--r-- | xen/include/asm-x86/processor.h | 6 | ||||
-rw-r--r-- | xen/include/asm-x86/x86_32/asm_defns.h | 2 | ||||
-rw-r--r-- | xen/include/asm-x86/x86_64/asm_defns.h | 2 |
16 files changed, 42 insertions, 44 deletions
diff --git a/xen/arch/x86/acpi/power.c b/xen/arch/x86/acpi/power.c index 53b5e17c44..7a08091b00 100644 --- a/xen/arch/x86/acpi/power.c +++ b/xen/arch/x86/acpi/power.c @@ -321,7 +321,7 @@ static void tboot_sleep(u8 sleep_state) } /* System is really put into sleep state by this stub */ -acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state) +acpi_status acpi_enter_sleep_state(u8 sleep_state) { acpi_status status; diff --git a/xen/arch/x86/hvm/svm/asid.c b/xen/arch/x86/hvm/svm/asid.c index 1723866f11..3b9c6ce0f6 100644 --- a/xen/arch/x86/hvm/svm/asid.c +++ b/xen/arch/x86/hvm/svm/asid.c @@ -38,7 +38,7 @@ void svm_asid_init(struct cpuinfo_x86 *c) * Called directly before VMRUN. Checks if the VCPU needs a new ASID, * assigns it, and if required, issues required TLB flushes. */ -asmlinkage void svm_asid_handle_vmrun(void) +void svm_asid_handle_vmrun(void) { struct vcpu *curr = current; struct vmcb_struct *vmcb = curr->arch.hvm_svm.vmcb; diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c index 0a69d38142..77ce22fe78 100644 --- a/xen/arch/x86/hvm/svm/intr.c +++ b/xen/arch/x86/hvm/svm/intr.c @@ -116,7 +116,7 @@ static void enable_intr_window(struct vcpu *v, struct hvm_intack intack) vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR); } -asmlinkage void svm_intr_assist(void) +void svm_intr_assist(void) { struct vcpu *v = current; struct vmcb_struct *vmcb = v->arch.hvm_svm.vmcb; diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c index faf82ba18d..85ce21ea82 100644 --- a/xen/arch/x86/hvm/svm/svm.c +++ b/xen/arch/x86/hvm/svm/svm.c @@ -1534,7 +1534,7 @@ static struct hvm_function_table __read_mostly svm_function_table = { .get_insn_bytes = svm_get_insn_bytes, }; -asmlinkage void svm_vmexit_handler(struct cpu_user_regs *regs) +void svm_vmexit_handler(struct cpu_user_regs *regs) { unsigned int exit_reason; struct vcpu *v = current; @@ -1851,7 +1851,7 @@ asmlinkage void svm_vmexit_handler(struct cpu_user_regs *regs) vmcb_set_vintr(vmcb, intr); } -asmlinkage void svm_trace_vmentry(void) +void svm_trace_vmentry(void) { HVMTRACE_ND (VMENTRY, 1/*cycles*/, 0, 0, 0, 0, 0, 0, 0); } diff --git a/xen/arch/x86/hvm/vmx/intr.c b/xen/arch/x86/hvm/vmx/intr.c index f9cb3f9cd7..2e9b410ad5 100644 --- a/xen/arch/x86/hvm/vmx/intr.c +++ b/xen/arch/x86/hvm/vmx/intr.c @@ -109,7 +109,7 @@ static void enable_intr_window(struct vcpu *v, struct hvm_intack intack) } } -asmlinkage void vmx_intr_assist(void) +void vmx_intr_assist(void) { struct hvm_intack intack; struct vcpu *v = current; diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index c487d3cba0..fe7e69cc82 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -2035,7 +2035,7 @@ static void vmx_failed_vmentry(unsigned int exit_reason, domain_crash(curr->domain); } -asmlinkage void vmx_enter_realmode(struct cpu_user_regs *regs) +void vmx_enter_realmode(struct cpu_user_regs *regs) { struct vcpu *v = current; @@ -2089,7 +2089,7 @@ static int vmx_handle_eoi_write(void) return 0; } -asmlinkage void vmx_vmexit_handler(struct cpu_user_regs *regs) +void vmx_vmexit_handler(struct cpu_user_regs *regs) { unsigned int exit_reason, idtv_info, intr_info = 0, vector = 0; unsigned long exit_qualification, inst_len = 0; @@ -2518,7 +2518,7 @@ asmlinkage void vmx_vmexit_handler(struct cpu_user_regs *regs) } } -asmlinkage void vmx_vmenter_helper(void) +void vmx_vmenter_helper(void) { struct vcpu *curr = current; u32 new_asid, old_asid; diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c index c54f0bc4ba..5afa90b02e 100644 --- a/xen/arch/x86/irq.c +++ b/xen/arch/x86/irq.c @@ -636,7 +636,7 @@ void pirq_set_affinity(struct domain *d, int pirq, const cpumask_t *mask) DEFINE_PER_CPU(unsigned int, irq_count); -asmlinkage void do_IRQ(struct cpu_user_regs *regs) +void do_IRQ(struct cpu_user_regs *regs) { struct irqaction *action; uint32_t tsc_in; diff --git a/xen/arch/x86/trace.c b/xen/arch/x86/trace.c index 3ae3e2d40d..404f293188 100644 --- a/xen/arch/x86/trace.c +++ b/xen/arch/x86/trace.c @@ -11,7 +11,7 @@ #define TRC_64_FLAG 0 #endif -asmlinkage void trace_hypercall(void) +void trace_hypercall(void) { struct cpu_user_regs *regs = guest_cpu_user_regs(); diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c index 78ed240ee2..5dd38fc3ef 100644 --- a/xen/arch/x86/traps.c +++ b/xen/arch/x86/traps.c @@ -420,7 +420,7 @@ static char *trapstr(int trapnr) * are disabled). In such situations we can't do much that is safe. We try to * print out some tracing and then we just spin. */ -asmlinkage void fatal_trap(int trapnr, struct cpu_user_regs *regs) +void fatal_trap(int trapnr, struct cpu_user_regs *regs) { static DEFINE_PER_CPU(char, depth); @@ -534,7 +534,7 @@ static unsigned int check_guest_io_breakpoint(struct vcpu *v, * Called from asm to set up the MCE trapbounce info. * Returns 0 if no callback is set up, else 1. */ -asmlinkage int set_guest_machinecheck_trapbounce(void) +int set_guest_machinecheck_trapbounce(void) { struct vcpu *v = current; struct trap_bounce *tb = &v->arch.trap_bounce; @@ -548,7 +548,7 @@ asmlinkage int set_guest_machinecheck_trapbounce(void) * Called from asm to set up the NMI trapbounce info. * Returns 0 if no callback is set up, else 1. */ -asmlinkage int set_guest_nmi_trapbounce(void) +int set_guest_nmi_trapbounce(void) { struct vcpu *v = current; struct trap_bounce *tb = &v->arch.trap_bounce; @@ -596,13 +596,13 @@ static inline void do_trap( } #define DO_ERROR_NOCODE(trapnr, name) \ -asmlinkage void do_##name(struct cpu_user_regs *regs) \ +void do_##name(struct cpu_user_regs *regs) \ { \ do_trap(trapnr, regs, 0); \ } #define DO_ERROR(trapnr, name) \ -asmlinkage void do_##name(struct cpu_user_regs *regs) \ +void do_##name(struct cpu_user_regs *regs) \ { \ do_trap(trapnr, regs, 1); \ } @@ -959,7 +959,7 @@ static int emulate_forced_invalid_op(struct cpu_user_regs *regs) return EXCRET_fault_fixed; } -asmlinkage void do_invalid_op(struct cpu_user_regs *regs) +void do_invalid_op(struct cpu_user_regs *regs) { struct bug_frame bug; struct bug_frame_str bug_str; @@ -1053,7 +1053,7 @@ asmlinkage void do_invalid_op(struct cpu_user_regs *regs) panic("FATAL TRAP: vector = %d (invalid opcode)\n", TRAP_invalid_op); } -asmlinkage void do_int3(struct cpu_user_regs *regs) +void do_int3(struct cpu_user_regs *regs) { DEBUGGER_trap_entry(TRAP_int3, regs); @@ -1066,7 +1066,7 @@ asmlinkage void do_int3(struct cpu_user_regs *regs) do_guest_trap(TRAP_int3, regs, 0); } -asmlinkage void do_machine_check(struct cpu_user_regs *regs) +void do_machine_check(struct cpu_user_regs *regs) { machine_check_vector(regs, regs->error_code); } @@ -1367,7 +1367,7 @@ static int fixup_page_fault(unsigned long addr, struct cpu_user_regs *regs) * Bit 3: Reserved bit violation * Bit 4: Instruction fetch */ -asmlinkage void do_page_fault(struct cpu_user_regs *regs) +void do_page_fault(struct cpu_user_regs *regs) { unsigned long addr, fixup; unsigned int error_code; @@ -1433,7 +1433,7 @@ asmlinkage void do_page_fault(struct cpu_user_regs *regs) * during early boot (an issue was seen once, but was most likely a hardware * problem). */ -asmlinkage void __init do_early_page_fault(struct cpu_user_regs *regs) +void __init do_early_page_fault(struct cpu_user_regs *regs) { static int stuck; static unsigned long prev_eip, prev_cr2; @@ -2978,7 +2978,7 @@ static void emulate_gate_op(struct cpu_user_regs *regs) #endif } -asmlinkage void do_general_protection(struct cpu_user_regs *regs) +void do_general_protection(struct cpu_user_regs *regs) { struct vcpu *v = current; unsigned long fixup; @@ -3248,7 +3248,7 @@ static int dummy_nmi_callback(struct cpu_user_regs *regs, int cpu) static nmi_callback_t nmi_callback = dummy_nmi_callback; -asmlinkage void do_nmi(struct cpu_user_regs *regs) +void do_nmi(struct cpu_user_regs *regs) { unsigned int cpu = smp_processor_id(); unsigned char reason; @@ -3284,7 +3284,7 @@ void unset_nmi_callback(void) nmi_callback = dummy_nmi_callback; } -asmlinkage void do_device_not_available(struct cpu_user_regs *regs) +void do_device_not_available(struct cpu_user_regs *regs) { struct vcpu *curr = current; @@ -3325,7 +3325,7 @@ static void ler_enable(void) wrmsrl(MSR_IA32_DEBUGCTLMSR, debugctl | 1); } -asmlinkage void do_debug(struct cpu_user_regs *regs) +void do_debug(struct cpu_user_regs *regs) { struct vcpu *v = current; @@ -3378,7 +3378,7 @@ asmlinkage void do_debug(struct cpu_user_regs *regs) return; } -asmlinkage void do_spurious_interrupt_bug(struct cpu_user_regs *regs) +void do_spurious_interrupt_bug(struct cpu_user_regs *regs) { } diff --git a/xen/arch/x86/x86_32/traps.c b/xen/arch/x86/x86_32/traps.c index 64baa3839e..4b224dc7b3 100644 --- a/xen/arch/x86/x86_32/traps.c +++ b/xen/arch/x86/x86_32/traps.c @@ -20,7 +20,7 @@ #include <public/callback.h> -extern asmlinkage int hypercall(void); +extern int hypercall(void); static void print_xen_info(void) { @@ -229,7 +229,7 @@ static struct notifier_block cpu_doublefault_tss_nfb = { .notifier_call = cpu_doublefault_tss_callback }; -asmlinkage void do_double_fault(void) +void do_double_fault(void) { struct tss_struct *tss; unsigned int cpu; diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c index 78a0452b49..2373435f29 100644 --- a/xen/arch/x86/x86_64/traps.c +++ b/xen/arch/x86/x86_64/traps.c @@ -23,10 +23,10 @@ #include <asm/hvm/support.h> #include <public/callback.h> -asmlinkage void syscall_enter(void); -asmlinkage void sysenter_entry(void); -asmlinkage void compat_hypercall(void); -asmlinkage void int80_direct_trap(void); +void syscall_enter(void); +void sysenter_entry(void); +void compat_hypercall(void); +void int80_direct_trap(void); static void print_xen_info(void) { @@ -215,8 +215,8 @@ void show_page_walk(unsigned long addr) l1_table_offset(addr), l1e_get_intpte(l1e), pfn); } -asmlinkage void double_fault(void); -asmlinkage void do_double_fault(struct cpu_user_regs *regs) +void double_fault(void); +void do_double_fault(struct cpu_user_regs *regs) { unsigned int cpu; diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h index 27c766d2db..ea6f84f6e8 100644 --- a/xen/include/asm-x86/config.h +++ b/xen/include/asm-x86/config.h @@ -110,13 +110,13 @@ extern char wakeup_start[]; extern unsigned int video_mode, video_flags; #endif +#define asmlinkage + #if defined(__x86_64__) #define CONFIG_X86_64 1 #define CONFIG_COMPAT 1 -#define asmlinkage - #define PML4_ENTRY_BITS 39 #ifndef __ASSEMBLY__ #define PML4_ENTRY_BYTES (1UL << PML4_ENTRY_BITS) @@ -280,8 +280,6 @@ extern unsigned int video_mode, video_flags; #define CONFIG_X86_32 1 #define CONFIG_DOMAIN_PAGE 1 -#define asmlinkage __attribute__((regparm(0))) - /* * Memory layout (high to low): PAE-SIZE * ------ diff --git a/xen/include/asm-x86/irq.h b/xen/include/asm-x86/irq.h index 59a786028e..5d4f793076 100644 --- a/xen/include/asm-x86/irq.h +++ b/xen/include/asm-x86/irq.h @@ -97,7 +97,7 @@ fastcall void smp_thermal_interrupt(struct cpu_user_regs *regs); fastcall void smp_cmci_interrupt(struct cpu_user_regs *regs); fastcall void smp_irq_move_cleanup_interrupt(struct cpu_user_regs *regs); -asmlinkage void do_IRQ(struct cpu_user_regs *regs); +void do_IRQ(struct cpu_user_regs *regs); void disable_8259A_irq(unsigned int irq); void enable_8259A_irq(unsigned int irq); diff --git a/xen/include/asm-x86/processor.h b/xen/include/asm-x86/processor.h index 1751373f49..2ace0da47d 100644 --- a/xen/include/asm-x86/processor.h +++ b/xen/include/asm-x86/processor.h @@ -548,7 +548,7 @@ void show_registers(struct cpu_user_regs *regs); void show_execution_state(struct cpu_user_regs *regs); #define dump_execution_state() run_in_exception_handler(show_execution_state) void show_page_walk(unsigned long addr); -asmlinkage void fatal_trap(int trapnr, struct cpu_user_regs *regs); +void fatal_trap(int trapnr, struct cpu_user_regs *regs); #ifdef CONFIG_COMPAT void compat_show_guest_stack(struct vcpu *, struct cpu_user_regs *, int lines); @@ -562,8 +562,8 @@ extern void mtrr_bp_init(void); void mcheck_init(struct cpuinfo_x86 *c, bool_t bsp); #define DECLARE_TRAP_HANDLER(_name) \ -asmlinkage void _name(void); \ -asmlinkage void do_ ## _name(struct cpu_user_regs *regs) +void _name(void); \ +void do_ ## _name(struct cpu_user_regs *regs) DECLARE_TRAP_HANDLER(divide_error); DECLARE_TRAP_HANDLER(debug); DECLARE_TRAP_HANDLER(nmi); diff --git a/xen/include/asm-x86/x86_32/asm_defns.h b/xen/include/asm-x86/x86_32/asm_defns.h index 93f25d8ba3..cd869e174f 100644 --- a/xen/include/asm-x86/x86_32/asm_defns.h +++ b/xen/include/asm-x86/x86_32/asm_defns.h @@ -138,7 +138,7 @@ __asm__( \ #define IRQ_NAME(nr) IRQ_NAME2(IRQ##nr) #define BUILD_IRQ(nr) \ -asmlinkage void IRQ_NAME(nr); \ +void IRQ_NAME(nr); \ __asm__( \ "\n"__ALIGN_STR"\n" \ STR(IRQ) #nr "_interrupt:\n\t" \ diff --git a/xen/include/asm-x86/x86_64/asm_defns.h b/xen/include/asm-x86/x86_64/asm_defns.h index 5c7159a7a5..e919e38990 100644 --- a/xen/include/asm-x86/x86_64/asm_defns.h +++ b/xen/include/asm-x86/x86_64/asm_defns.h @@ -114,7 +114,7 @@ __asm__( \ #define IRQ_NAME(nr) IRQ_NAME2(IRQ##nr) #define BUILD_IRQ(nr) \ -asmlinkage void IRQ_NAME(nr); \ +void IRQ_NAME(nr); \ __asm__( \ "\n"__ALIGN_STR"\n" \ STR(IRQ) #nr "_interrupt:\n\t" \ |