linux/include/asm-powerpc
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
..
iseries [POWERPC] include/asm-powerpc/: Spelling fixes 2007-12-20 16:17:44 +11:00
8xx_immap.h [POWERPC] include/asm-powerpc/: Spelling fixes 2007-12-20 16:17:44 +11:00
8253pit.h
a.out.h aout: move STACK_TOP[_MAX] to asm/processor.h 2008-02-08 09:22:29 -08:00
abs_addr.h
agp.h x86: remove flush_agp_mappings() 2008-01-30 13:34:07 +01:00
asm-compat.h
atomic.h
auxvec.h
backlight.h
bitops.h ext4: Add ext4_find_next_bit() 2008-01-28 23:58:27 -05:00
bootx.h
btext.h
bug.h
bugs.h
byteorder.h
cache.h
cacheflush.h
cell-pmu.h
cell-regs.h
checksum.h
clk_interface.h
compat.h asm-*/compat.h: fix typo in comment 2008-02-03 16:32:51 +02:00
cpm1.h [POWERPC] CPM: Move definition of buffer descriptor to cpm.h 2008-01-28 08:31:06 -06:00
cpm2.h [POWERPC] CPM: Move definition of buffer descriptor to cpm.h 2008-01-28 08:31:06 -06:00
cpm.h [POWERPC] CPM: Move definition of buffer descriptor to cpm.h 2008-01-28 08:31:06 -06:00
cputable.h [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
cputhreads.h [POWERPC] Cleanup SMT thread handling 2007-12-03 13:56:25 +11:00
cputime.h taskstats scaled time cleanup 2008-02-06 10:41:00 -08:00
current.h
dbdma.h
dcr-mmio.h
dcr-native.h [POWERPC] 4xx: PCIe indirect DCR spinlock fix. 2008-02-06 21:02:57 -06:00
dcr-regs.h [POWERPC] 4xx: Improve support for 4xx indirect DCRs 2007-12-23 13:12:11 -06:00
dcr.h
delay.h
device.h
div64.h
dma-mapping.h [POWERPC] Add set_dma_ops() to match get_dma_ops() 2008-01-31 12:11:09 +11:00
dma.h scheduled OSS driver removal 2008-02-06 10:41:02 -08:00
edac.h
eeh_event.h
eeh.h
elf.h [POWERPC] Switch to generic compat_binfmt_elf code 2008-02-07 20:40:18 +11:00
emergency-restart.h
errno.h
exception.h
fb.h
fcntl.h
firmware.h [POWERPC] celleb: Add support for native CBE 2007-12-11 13:34:40 +11:00
floppy.h
fs_pd.h
futex.h
grackle.h
hardirq.h
heathrow.h
highmem.h
hvcall.h
hvconsole.h
hvcserver.h
hw_irq.h
hydra.h
i8259.h
ibmebus.h
ide.h ide: remove stale ide.h "configuration options" 2008-01-25 22:17:08 +01:00
immap_86xx.h [POWERPC] 86xx: fix guts_set_dmacr() and add guts_set_pmuxcr_dma() to immap_86xx.h 2007-12-11 13:57:18 -06:00
immap_cpm2.h
immap_qe.h [POWERPC] QE: Add ability to upload QE firmware 2008-01-23 19:34:06 -06:00
io-defs.h
io.h [POWERPC] Make isa_mem_base common to 32 and 64 bits 2007-12-11 15:43:34 +11:00
ioctl.h
ioctls.h
iommu.h iommu sg: powerpc: convert iommu to use the IOMMU helper 2008-02-05 09:44:11 -08:00
ipcbuf.h
ipic.h [POWERPC] ipic: add new interrupts introduced by new chip 2007-12-11 13:57:18 -06:00
irq_regs.h
irq.h [POWERPC] 86xx: Remove unused IRQ defines 2008-01-28 09:19:16 -06:00
irqflags.h
Kbuild
kdebug.h
kdump.h
kexec.h [POWERPC] kdump shutdown hook support 2008-01-25 22:52:50 +11:00
keylargo.h
kgdb.h
kmap_types.h
kprobes.h
libata-portmap.h
linkage.h
lmb.h [POWERPC] Fix handling of memreserve if the range lands in highmem 2008-01-23 19:29:08 -06:00
local.h
lppaca.h
lv1call.h
machdep.h [POWERPC] Implement arch disable/enable irq hooks. 2007-12-21 22:13:35 +11:00
macio.h
mc146818rtc.h
mediabay.h ppc: fix #ifdef-s in mediabay driver (take 2) 2008-02-06 02:57:50 +01:00
mman.h
mmu_context.h
mmu-8xx.h
mmu-40x.h
mmu-44x.h
mmu-fsl-booke.h
mmu-hash32.h
mmu-hash64.h [POWERPC] Provide a way to protect 4k subpages when using 64k pages 2008-01-24 10:06:01 +11:00
mmu.h
mmzone.h
module.h
mpc8xx.h [POWERPC] 8xx: Get rid of conditional includes of board specific setup 2008-01-28 08:31:04 -06:00
mpc52xx_psc.h [POWERPC] mpc512x: Add MPC512x PSC support to MPC52xx psc driver 2008-02-06 14:05:40 -07:00
mpc52xx.h [POWERPC] Add common clock setting routine mpc52xx_psc_set_clkdiv() 2008-01-26 15:32:18 -07:00
mpc86xx.h
mpc512x.h [POWERPC] mpc512x: Basic platform support 2008-02-06 14:03:10 -07:00
mpc8260.h [POWERPC] 82xx: Embedded Planet EP8248E support 2008-01-23 19:34:43 -06:00
mpic.h [POWERPC] pasemi: Distribute interrupts evenly across cpus 2007-12-28 09:22:25 -06:00
msgbuf.h
mutex.h
namei.h
nvram.h include/asm-powerpc/nvram.h needs list.h 2008-02-05 09:44:08 -08:00
of_device.h
of_platform.h [POWERPC] Enable RTC for Ebony and Walnut (v2) 2008-01-25 07:07:26 -06:00
ohare.h
oprofile_impl.h [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
paca.h taskstats scaled time cleanup 2008-02-06 10:41:00 -08:00
page_32.h Cleanup asm/{elf,page,user}.h: #ifdef __KERNEL__ is no longer needed 2008-02-07 08:42:30 -08:00
page_64.h Cleanup asm/{elf,page,user}.h: #ifdef __KERNEL__ is no longer needed 2008-02-07 08:42:30 -08:00
page.h CONFIG_HIGHPTE vs. sub-page page tables. 2008-02-08 09:22:42 -08:00
param.h
parport.h
pasemi_dma.h pasemi: DMA engine management library 2008-01-28 15:04:21 -08:00
pci-bridge.h [POWERPC] Remove update_bridge_resource 2008-01-23 19:32:30 -06:00
pci.h [POWERPC] Merge PCI resource allocation & assignment 2007-12-20 16:18:09 +11:00
percpu.h percpu: fix DEBUG_PREEMPT per_cpu checking 2008-02-23 12:09:28 -08:00
pgalloc-32.h CONFIG_HIGHPTE vs. sub-page page tables. 2008-02-08 09:22:42 -08:00
pgalloc-64.h CONFIG_HIGHPTE vs. sub-page page tables. 2008-02-08 09:22:42 -08:00
pgalloc.h
pgtable-4k.h
pgtable-64k.h [POWERPC] Provide a way to protect 4k subpages when using 64k pages 2008-01-24 10:06:01 +11:00
pgtable-ppc32.h [POWERPC] Fix swapper_pg_dir size when CONFIG_PTE_64BIT=y on FSL_BOOKE 2007-12-06 13:11:04 -06:00
pgtable-ppc64.h
pgtable.h
pmac_feature.h [POWERPC] Disable G5 NAP mode during SMU commands on U3 2008-02-08 19:52:35 +11:00
pmac_low_i2c.h
pmac_pfunc.h
pmc.h
pmi.h
poll.h
posix_types.h asm-*/posix_types.h: scrub __GLIBC__ 2008-02-08 09:22:34 -08:00
ppc_asm.h
ppc-pci.h [POWERPC] iSeries: Call iSeries_pcibios_init from setup_arch 2007-12-11 13:42:32 +11:00
processor.h aout: move STACK_TOP[_MAX] to asm/processor.h 2008-02-08 09:22:29 -08:00
prom.h [POWERPC] Add of_translate_dma_address 2007-12-11 15:43:35 +11:00
ps3.h [POWERPC] PS3: Add logical performance monitor driver support 2008-01-25 22:52:53 +11:00
ps3av.h ps3: use symbolic names for video modes 2008-02-06 10:41:17 -08:00
ps3fb.h
ps3stor.h
pSeries_reconfig.h
ptrace.h [POWERPC] Use generic compat_sys_ptrace 2008-02-07 20:40:21 +11:00
qe_ic.h
qe.h [POWERPC] QE: Add ability to upload QE firmware 2008-01-23 19:34:06 -06:00
reg_8xx.h
reg_booke.h [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
reg_fsl_emb.h [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
reg.h [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
resource.h
rheap.h
rtas.h Revert "[POWERPC] Fix RTAS os-term usage on kernel panic" 2007-12-03 09:39:45 +11:00
rtc.h
rwsem.h
scatterlist.h Add CONFIG_DEBUG_SG sg validation 2007-10-22 21:20:03 +02:00
seccomp.h
sections.h
semaphore.h
sembuf.h
serial.h
setjmp.h [POWERPC] Make setjmp/longjmp code usable outside of xmon 2008-01-25 22:52:50 +11:00
setup.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
smp.h
smu.h [POWERPC] include/asm-powerpc/: Spelling fixes 2007-12-20 16:17:44 +11:00
socket.h [NET]: Introducing socket mark socket option. 2008-01-31 19:27:19 -08:00
sockios.h
sparsemem.h [POWERPC] PS3: Remove lpar address workaround 2008-01-25 22:52:53 +11:00
spinlock_types.h
spinlock.h
spu_csa.h [POWERPC] spufs: rework class 0 and 1 interrupt handling 2007-12-21 19:46:20 +11:00
spu_info.h
spu_priv1.h [POWERPC] cell: wrap master run control bit 2007-12-21 19:45:05 +11:00
spu.h [POWERPC] cell: fix spurious false return from spu_trap_data_{map,seg} 2008-02-20 14:57:36 +11:00
sstep.h
stat.h
statfs.h
string.h
suspend.h
synch.h
syscalls.h
systbl.h [POWERPC] Wire up new timerfd syscalls 2008-02-14 22:11:01 +11:00
system.h Merge branch 'for-2.6.25' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2008-02-07 09:02:26 -08:00
tce.h
termbits.h
termios.h
thread_info.h
time.h [POWERPC] Fix hardware IRQ time accounting problem. 2007-12-06 16:08:59 +11:00
timex.h
tlb.h
tlbflush.h [POWERPC] Fix oops related to 4xx flush_tlb_page modification 2007-11-09 03:51:14 -06:00
topology.h
tsi108_irq.h
tsi108_pci.h
tsi108.h
types.h
uaccess.h
ucc_fast.h
ucc_slow.h
ucc.h
ucontext.h
udbg.h [POWERPC] 4xx: Add early udbg support for 40x processors 2007-12-23 13:13:03 -06:00
uic.h
unaligned.h
uninorth.h
unistd.h [POWERPC] Wire up new timerfd syscalls 2008-02-14 22:11:01 +11:00
user.h Sanitize the type of struct user.u_ar0 2008-02-07 08:42:30 -08:00
vdso_datapage.h [POWERPC] vdso: Fixes for cache block sizes 2007-11-20 13:56:31 +11:00
vdso.h
vga.h
vio.h [POWERPC] iSeries: Fix section mismatch in viodsasd 2008-02-06 16:30:00 +11:00
xilinx_intc.h
xmon.h
xor.h