Loading arch/i386/Kconfig +0 −5 Original line number Original line Diff line number Diff line Loading @@ -908,11 +908,6 @@ config IRQBALANCE The default yes will allow the kernel to do irq load balancing. The default yes will allow the kernel to do irq load balancing. Saying no will keep the kernel from doing irq load balancing. Saying no will keep the kernel from doing irq load balancing. config HAVE_DEC_LOCK bool depends on (SMP || PREEMPT) && X86_CMPXCHG default y # turning this on wastes a bunch of space. # turning this on wastes a bunch of space. # Summit needs it only when NUMA is on # Summit needs it only when NUMA is on config BOOT_IOREMAP config BOOT_IOREMAP Loading arch/i386/lib/Makefile +0 −1 Original line number Original line Diff line number Diff line Loading @@ -7,4 +7,3 @@ lib-y = checksum.o delay.o usercopy.o getuser.o putuser.o memcpy.o strstr.o \ bitops.o bitops.o lib-$(CONFIG_X86_USE_3DNOW) += mmx.o lib-$(CONFIG_X86_USE_3DNOW) += mmx.o lib-$(CONFIG_HAVE_DEC_LOCK) += dec_and_lock.o arch/i386/lib/dec_and_lock.cdeleted 100644 → 0 +0 −42 Original line number Original line Diff line number Diff line /* * x86 version of "atomic_dec_and_lock()" using * the atomic "cmpxchg" instruction. * * (For CPU's lacking cmpxchg, we use the slow * generic version, and this one never even gets * compiled). */ #include <linux/spinlock.h> #include <linux/module.h> #include <asm/atomic.h> int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock) { int counter; int newcount; repeat: counter = atomic_read(atomic); newcount = counter-1; if (!newcount) goto slow_path; asm volatile("lock; cmpxchgl %1,%2" :"=a" (newcount) :"r" (newcount), "m" (atomic->counter), "0" (counter)); /* If the above failed, "eax" will have changed */ if (newcount != counter) goto repeat; return 0; slow_path: spin_lock(lock); if (atomic_dec_and_test(atomic)) return 1; spin_unlock(lock); return 0; } EXPORT_SYMBOL(_atomic_dec_and_lock); arch/ia64/Kconfig +0 −5 Original line number Original line Diff line number Diff line Loading @@ -298,11 +298,6 @@ config PREEMPT source "mm/Kconfig" source "mm/Kconfig" config HAVE_DEC_LOCK bool depends on (SMP || PREEMPT) default y config IA32_SUPPORT config IA32_SUPPORT bool "Support for Linux/x86 binaries" bool "Support for Linux/x86 binaries" help help Loading arch/ia64/lib/Makefile +0 −1 Original line number Original line Diff line number Diff line Loading @@ -15,7 +15,6 @@ lib-$(CONFIG_ITANIUM) += copy_page.o copy_user.o memcpy.o lib-$(CONFIG_MCKINLEY) += copy_page_mck.o memcpy_mck.o lib-$(CONFIG_MCKINLEY) += copy_page_mck.o memcpy_mck.o lib-$(CONFIG_PERFMON) += carta_random.o lib-$(CONFIG_PERFMON) += carta_random.o lib-$(CONFIG_MD_RAID5) += xor.o lib-$(CONFIG_MD_RAID5) += xor.o lib-$(CONFIG_HAVE_DEC_LOCK) += dec_and_lock.o AFLAGS___divdi3.o = AFLAGS___divdi3.o = AFLAGS___udivdi3.o = -DUNSIGNED AFLAGS___udivdi3.o = -DUNSIGNED Loading Loading
arch/i386/Kconfig +0 −5 Original line number Original line Diff line number Diff line Loading @@ -908,11 +908,6 @@ config IRQBALANCE The default yes will allow the kernel to do irq load balancing. The default yes will allow the kernel to do irq load balancing. Saying no will keep the kernel from doing irq load balancing. Saying no will keep the kernel from doing irq load balancing. config HAVE_DEC_LOCK bool depends on (SMP || PREEMPT) && X86_CMPXCHG default y # turning this on wastes a bunch of space. # turning this on wastes a bunch of space. # Summit needs it only when NUMA is on # Summit needs it only when NUMA is on config BOOT_IOREMAP config BOOT_IOREMAP Loading
arch/i386/lib/Makefile +0 −1 Original line number Original line Diff line number Diff line Loading @@ -7,4 +7,3 @@ lib-y = checksum.o delay.o usercopy.o getuser.o putuser.o memcpy.o strstr.o \ bitops.o bitops.o lib-$(CONFIG_X86_USE_3DNOW) += mmx.o lib-$(CONFIG_X86_USE_3DNOW) += mmx.o lib-$(CONFIG_HAVE_DEC_LOCK) += dec_and_lock.o
arch/i386/lib/dec_and_lock.cdeleted 100644 → 0 +0 −42 Original line number Original line Diff line number Diff line /* * x86 version of "atomic_dec_and_lock()" using * the atomic "cmpxchg" instruction. * * (For CPU's lacking cmpxchg, we use the slow * generic version, and this one never even gets * compiled). */ #include <linux/spinlock.h> #include <linux/module.h> #include <asm/atomic.h> int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock) { int counter; int newcount; repeat: counter = atomic_read(atomic); newcount = counter-1; if (!newcount) goto slow_path; asm volatile("lock; cmpxchgl %1,%2" :"=a" (newcount) :"r" (newcount), "m" (atomic->counter), "0" (counter)); /* If the above failed, "eax" will have changed */ if (newcount != counter) goto repeat; return 0; slow_path: spin_lock(lock); if (atomic_dec_and_test(atomic)) return 1; spin_unlock(lock); return 0; } EXPORT_SYMBOL(_atomic_dec_and_lock);
arch/ia64/Kconfig +0 −5 Original line number Original line Diff line number Diff line Loading @@ -298,11 +298,6 @@ config PREEMPT source "mm/Kconfig" source "mm/Kconfig" config HAVE_DEC_LOCK bool depends on (SMP || PREEMPT) default y config IA32_SUPPORT config IA32_SUPPORT bool "Support for Linux/x86 binaries" bool "Support for Linux/x86 binaries" help help Loading
arch/ia64/lib/Makefile +0 −1 Original line number Original line Diff line number Diff line Loading @@ -15,7 +15,6 @@ lib-$(CONFIG_ITANIUM) += copy_page.o copy_user.o memcpy.o lib-$(CONFIG_MCKINLEY) += copy_page_mck.o memcpy_mck.o lib-$(CONFIG_MCKINLEY) += copy_page_mck.o memcpy_mck.o lib-$(CONFIG_PERFMON) += carta_random.o lib-$(CONFIG_PERFMON) += carta_random.o lib-$(CONFIG_MD_RAID5) += xor.o lib-$(CONFIG_MD_RAID5) += xor.o lib-$(CONFIG_HAVE_DEC_LOCK) += dec_and_lock.o AFLAGS___divdi3.o = AFLAGS___divdi3.o = AFLAGS___udivdi3.o = -DUNSIGNED AFLAGS___udivdi3.o = -DUNSIGNED Loading