kernel-ark/include
Steve Langasek c00a76aea3 [PATCH] __cmpxchg() must really always be inlined on alpha
With the latest 2.6.15 kernel builds for alpha on Debian, we ran into a
problem with undefined references to __cmpxchg_called_with_bad_pointer() in
a couple of kernel modules (xfs.ko and drm.ko; see
http://bugs.debian.org/347556).

It looks like people have been trying to out-clever each other wrt the
definition of "inline" on this architecture :), with the result that
__cmpxchg(), which must be inlined so the compiler can see its argument is
const, is not guaranteed to be inlined.  Indeed, it was not being inlined
when building with -Os.

The attached patch fixes the issue by adding an
__attribute__((always_inline)) explicitly to the definition of __cmpxchg()
instead of relying on redefines of "inline" elsewhere to make this happen.

Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-02-07 16:12:31 -08:00
..
acpi [ACPI] ACPICA 20060127 2006-01-31 03:25:09 -05:00
asm-alpha [PATCH] __cmpxchg() must really always be inlined on alpha 2006-02-07 16:12:31 -08:00
asm-arm [ARM] 3284/1: S3C2400 - adds support to GPIO 2006-02-01 21:24:23 +00:00
asm-arm26 [PATCH] arm26: add __kernel_old_dev_t for nfsd 2006-02-01 08:53:22 -08:00
asm-cris [PATCH] include/asm-*/bitops.h: fix more "~0UL >> size" typos 2006-02-03 08:32:02 -08:00
asm-frv [PATCH] include/asm-*/bitops.h: fix more "~0UL >> size" typos 2006-02-03 08:32:02 -08:00
asm-generic [PATCH] Use atomic64_set for 64-bit case of atomic_long_set 2006-01-15 10:17:07 -08:00
asm-h8300 [PATCH] include/asm-*/bitops.h: fix more "~0UL >> size" typos 2006-02-03 08:32:02 -08:00
asm-i386 [PATCH] Fix "value computed is not used" compile warnings with gcc-4.1 2006-02-05 11:06:54 -08:00
asm-ia64 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 2006-02-06 15:46:39 -08:00
asm-m32r [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-m68k [PATCH] m68k: kill mach_floppy_setup, convert to proper __setup() in drivers 2006-01-12 09:09:05 -08:00
asm-m68knommu [PATCH] m68k: kill mach_floppy_setup, convert to proper __setup() in drivers 2006-01-12 09:09:05 -08:00
asm-mips [MIPS] TX49x7: Fix reporting of the CPU name and PCI clock 2006-02-07 13:30:26 +00:00
asm-parisc [PARISC] New syscalls (inotify, *at, pselect6/ppoll, migrate_pages) 2006-01-30 00:53:14 -05:00
asm-powerpc [PATCH] powerpc: fix for kexec ppc32 2006-02-01 08:53:19 -08:00
asm-ppc [PATCH] ppc: Remove powermac support from ARCH=ppc 2006-01-15 17:30:44 +11:00
asm-s390 [PATCH] s390: compile fix: missing defines in asm-s390/io.h 2006-02-03 08:32:01 -08:00
asm-sh [PATCH] sh/sh64: Fix bogus TIOCGICOUNT definitions 2006-02-01 08:53:20 -08:00
asm-sh64 [PATCH] sh/sh64: Fix bogus TIOCGICOUNT definitions 2006-02-01 08:53:20 -08:00
asm-sparc [SPARC]: Add support for *at(), ppoll, and pselect syscalls. 2006-01-19 02:42:49 -08:00
asm-sparc64 [SPARC64]: Implement __raw_read_trylock() 2006-01-23 21:03:56 -08:00
asm-um [PATCH] uml: avoid "CONFIG_NR_CPUS undeclared" bogus error messages 2006-02-01 08:53:23 -08:00
asm-v850 [PATCH] include/asm-*/bitops.h: fix more "~0UL >> size" typos 2006-02-03 08:32:02 -08:00
asm-x86_64 [PATCH] x86_64: Fix the node cpumask of a cpu going down 2006-02-07 16:12:31 -08:00
asm-xtensa [PATCH] xtensa: add asm/futex.h 2006-02-01 08:53:23 -08:00
keys [PATCH] Keys: Remove key duplication 2006-01-06 08:33:29 -08:00
linux Merge branch 'work-fixes' 2006-02-07 08:11:31 -02:00
math-emu
media V4L/DVB (3388): tuner_params->tda988x is currently unused, so disable 2006-01-15 21:28:17 -02:00
mtd
net [NETFILTER]: nf_conntrack: check address family when finding protocol module 2006-02-04 23:51:17 -08:00
pcmcia
rdma IB: Add node_guid to struct ib_device 2006-01-10 07:39:34 -08:00
rxrpc
scsi Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 2006-01-31 13:12:41 -08:00
sound [PATCH] DocBook: fix kernel-doc comments 2006-01-10 08:01:53 -08:00
video [PATCH] include/video/newport.h: "extern inline" -> "static inline" 2006-01-10 08:01:50 -08:00