linux/include
Anton Blanchard 144b9c135b [PATCH] powerpc: use lwsync in atomics, bitops, lock functions
eieio is only a store - store ordering. When used to order an unlock
operation loads may leak out of the critical region. This is potentially
buggy, one example is if a user wants to atomically read a couple of
values.

We can solve this with an lwsync which orders everything except store - load.

I removed the (now unused) EIEIO_ON_SMP macros and the c versions
isync_on_smp and eieio_on_smp now we dont use them. I also removed some
old comments that were used to identify inline spinlocks in assembly,
they dont make sense now our locks are out of line.

Another interesting thing was that read_unlock was using an eieio even
though the rest of the spinlock code had already been converted to
use lwsync.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-01-13 21:18:50 +11:00
..
acpi
asm-alpha [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-arm Merge master.kernel.org:/home/rmk/linux-2.6-arm 2006-01-12 12:23:49 -08:00
asm-arm26 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-cris [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-frv [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-generic
asm-h8300 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-i386 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-ia64 [PATCH] ia64: task_pt_regs() 2006-01-12 09:08:58 -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 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-parisc [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-powerpc [PATCH] powerpc: use lwsync in atomics, bitops, lock functions 2006-01-13 21:18:50 +11:00
asm-ppc Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge 2006-01-12 10:21:22 -08:00
asm-s390 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-sh [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-sh64 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-sparc [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-sparc64 [PATCH] sparc64: task_pt_regs() 2006-01-12 09:08:52 -08:00
asm-um [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-v850 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-x86_64 [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
asm-xtensa [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
keys
linux [PATCH] powerpc: Add/remove/update properties in /proc/device-tree 2006-01-13 21:02:13 +11:00
math-emu
media
mtd
net [PATCH] fix wrong comments in ieee80211.h 2006-01-12 16:39:45 -05:00
pcmcia
rdma
rxrpc
scsi
sound
video