From 73c1377da9fb732bf8ff1b262a92507e8736b1bf Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 13 May 2012 13:07:16 -0700 Subject: sparc32: Kill btfixup for xchg()'s 'swap' instruction. We always have this instruction available, so no need to use btfixup for it any more. This also eradicates the whole of atomic_32.S and thus the __atomic_begin and __atomic_end symbols completely. Signed-off-by: David S. Miller --- arch/sparc/kernel/sparc_ksyms_32.c | 4 +--- arch/sparc/kernel/time_32.c | 3 --- 2 files changed, 1 insertion(+), 6 deletions(-) (limited to 'arch/sparc/kernel') diff --git a/arch/sparc/kernel/sparc_ksyms_32.c b/arch/sparc/kernel/sparc_ksyms_32.c index fd38a920992d..9763895b22b2 100644 --- a/arch/sparc/kernel/sparc_ksyms_32.c +++ b/arch/sparc/kernel/sparc_ksyms_32.c @@ -29,9 +29,7 @@ EXPORT_SYMBOL(__ret_efault); EXPORT_SYMBOL(empty_zero_page); /* Defined using magic */ -#ifndef CONFIG_SMP -EXPORT_SYMBOL(BTFIXUP_CALL(___xchg32)); -#else +#ifdef CONFIG_SMP EXPORT_SYMBOL(BTFIXUP_CALL(__hard_smp_processor_id)); #endif EXPORT_SYMBOL(BTFIXUP_CALL(mmu_unlockarea)); diff --git a/arch/sparc/kernel/time_32.c b/arch/sparc/kernel/time_32.c index 157dcc58a216..1e25a7ab1ea5 100644 --- a/arch/sparc/kernel/time_32.c +++ b/arch/sparc/kernel/time_32.c @@ -68,7 +68,6 @@ static int set_rtc_mmss(unsigned long); unsigned long profile_pc(struct pt_regs *regs) { extern char __copy_user_begin[], __copy_user_end[]; - extern char __atomic_begin[], __atomic_end[]; extern char __bzero_begin[], __bzero_end[]; unsigned long pc = regs->pc; @@ -76,8 +75,6 @@ unsigned long profile_pc(struct pt_regs *regs) if (in_lock_functions(pc) || (pc >= (unsigned long) __copy_user_begin && pc < (unsigned long) __copy_user_end) || - (pc >= (unsigned long) __atomic_begin && - pc < (unsigned long) __atomic_end) || (pc >= (unsigned long) __bzero_begin && pc < (unsigned long) __bzero_end)) pc = regs->u_regs[UREG_RETPC]; -- cgit v1.2.3