linux-stable-rt/include/asm-generic
Hugh Dickins 1e8352784a percpu: fix DEBUG_PREEMPT per_cpu checking
2.6.25-rc1 percpu changes broke CONFIG_DEBUG_PREEMPT's per_cpu checking
on several architectures.  On s390, sparc64 and x86 it's been weakened to
not checking at all; whereas on powerpc64 it's become too strict, issuing
warnings from __raw_get_cpu_var in io_schedule and init_timer for example.

Fix this by weakening powerpc's __my_cpu_offset to use the non-checking
local_paca instead of get_paca (which itself contains such a check);
and strengthening the generic my_cpu_offset to go the old slow way via
smp_processor_id when CONFIG_DEBUG_PREEMPT (debug_smp_processor_id is
where all the knowledge of what's correct when lives).

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Reviewed-by: Mike Travis <travis@sgi.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-23 12:09:28 -08:00
..
bitops
4level-fixup.h
Kbuild
Kbuild.asm aout: suppress A.OUT library support if !CONFIG_ARCH_SUPPORTS_AOUT 2008-02-08 09:22:30 -08:00
atomic.h
audit_change_attr.h
audit_dir_write.h
audit_read.h
audit_signal.h
audit_write.h
bitops.h
bug.h
cmpxchg-local.h Add cmpxchg_local to asm-generic for per cpu atomic operations 2008-02-07 08:42:30 -08:00
cmpxchg.h Add cmpxchg_local to asm-generic for per cpu atomic operations 2008-02-07 08:42:30 -08:00
cputime.h
device.h
div64.h
dma-mapping-broken.h
dma-mapping.h
emergency-restart.h
errno-base.h
errno.h
fcntl.h
futex.h
gpio.h
ide_iops.h
ioctl.h
iomap.h asm-generic: remove fastcall 2008-02-08 09:22:31 -08:00
irq_regs.h
kdebug.h
libata-portmap.h
local.h
memory_model.h
mm_hooks.h
mman.h
mutex-dec.h asm-generic: remove fastcall 2008-02-08 09:22:31 -08:00
mutex-null.h
mutex-xchg.h asm-generic: remove fastcall 2008-02-08 09:22:31 -08:00
page.h
pci-dma-compat.h
pci.h
percpu.h percpu: fix DEBUG_PREEMPT per_cpu checking 2008-02-23 12:09:28 -08:00
pgtable-nopmd.h
pgtable-nopud.h
pgtable.h
poll.h
resource.h
rtc.h
sections.h
siginfo.h
signal.h
statfs.h
termios.h tty: let architectures override the user/kernel macros. 2008-02-08 09:22:24 -08:00
tlb.h
topology.h Make topology fallback macros reference their arguments. 2008-02-11 20:37:29 -08:00
uaccess.h
unaligned.h
vmlinux.lds.h Add missing init section definitions 2008-02-19 21:00:18 +01:00
xor.h