linux/include/asm-sparc64
Paul Mackerras bfe5d83419 [PATCH] Define __raw_get_cpu_var and use it
There are several instances of per_cpu(foo, raw_smp_processor_id()), which
is semantically equivalent to __get_cpu_var(foo) but without the warning
that smp_processor_id() can give if CONFIG_DEBUG_PREEMPT is enabled.  For
those architectures with optimized per-cpu implementations, namely ia64,
powerpc, s390, sparc64 and x86_64, per_cpu() turns into more and slower
code than __get_cpu_var(), so it would be preferable to use __get_cpu_var
on those platforms.

This defines a __raw_get_cpu_var(x) macro which turns into per_cpu(x,
raw_smp_processor_id()) on architectures that use the generic per-cpu
implementation, and turns into __get_cpu_var(x) on the architectures that
have an optimized per-cpu implementation.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-25 10:01:01 -07:00
..
a.out.h
agp.h
apb.h
asi.h
atomic.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
auxio.h
auxvec.h
bbc.h
bitops.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
bpp.h
bsderrno.h
bug.h
bugs.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
byteorder.h
cache.h
cacheflush.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
chafsr.h
checksum.h
chmctrl.h
cmt.h
compat.h
const.h
cpudata.h [SPARC64]: Send all device interrupts via one PIL. 2006-06-20 01:20:00 -07:00
cputime.h
current.h
dcr.h
dcu.h
delay.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
display7seg.h
div64.h
dma-mapping.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-05-24 09:22:21 +01:00
dma.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
ebus.h [SPARC64]: Add of_device layer and make ebus/isa use it. 2006-06-23 23:15:43 -07:00
elf.h
emergency-restart.h
envctrl.h
errno.h
estate.h
fbio.h
fcntl.h
fhc.h [SPARC64]: Convert central bus layer to in-kernel PROM device tree. 2006-06-23 23:15:32 -07:00
floppy.h [SPARC64]: Use in-kernel PROM tree for EBUS and ISA. 2006-06-23 23:15:28 -07:00
fpumacro.h
futex.h [SPARC64]: Implement futex_atomic_cmpxchg_inatomic(). 2006-03-28 01:00:08 -08:00
hardirq.h [SPARC64]: Move over to GENERIC_HARDIRQS. 2006-06-20 01:23:32 -07:00
head.h
hw_irq.h [SPARC64]: Move over to GENERIC_HARDIRQS. 2006-06-20 01:23:32 -07:00
hypervisor.h
ide.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
idprom.h
intr_queue.h
io.h
ioctl.h
ioctls.h
iommu.h
ipc.h
ipcbuf.h
irq.h Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 2006-06-20 17:39:28 -07:00
isa.h [SPARC64]: Add of_device layer and make ebus/isa use it. 2006-06-23 23:15:43 -07:00
kdebug.h [PATCH] Notifier chain update: API changes 2006-03-27 08:44:50 -08:00
kmap_types.h
kprobes.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
linkage.h
local.h
lsu.h
mc146818rtc.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
mman.h
mmu_context.h
mmu.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
module.h
mostek.h
msgbuf.h
mutex.h
namei.h
ns87303.h
numnodes.h
of_device.h [SPARC]: Port of_device layer and make ebus use it. 2006-06-23 23:15:47 -07:00
openprom.h
openpromio.h
oplib.h [SPARC64]: Convert cpu_find_by_*() interface to in-kernel PROM device tree. 2006-06-23 23:15:17 -07:00
page.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
param.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
parport.h [SPARC64]: Use in-kernel PROM tree for EBUS and ISA. 2006-06-23 23:15:28 -07:00
pbm.h [SPARC64]: Convert sparc64 PCI layer to in-kernel device tree. 2006-06-23 23:15:26 -07:00
pci.h [SPARC64]: Respect gfp_t argument to dma_alloc_coherent(). 2006-05-23 02:07:22 -07:00
pconf.h
percpu.h [PATCH] Define __raw_get_cpu_var and use it 2006-06-25 10:01:01 -07:00
perfctr.h
pgalloc.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
pgtable.h [SPARC64]: Fix for Niagara memory corruption. 2006-06-23 23:15:21 -07:00
pil.h [SPARC64]: Send all device interrupts via one PIL. 2006-06-20 01:20:00 -07:00
poll.h
posix_types.h
processor.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
prom.h [SPARC64]: Expand of_*() interfaces some more. 2006-06-23 23:15:41 -07:00
psrcompat.h
pstate.h
ptrace.h
reg.h
resource.h
rtc.h
rwsem-const.h
rwsem.h
sbus.h [SBUS]: Rewrite and plug into of_device framework. 2006-06-23 23:15:50 -07:00
scatterlist.h
scratchpad.h
seccomp.h
sections.h
semaphore.h
sembuf.h
setup.h
sfafsr.h
sfp-machine.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
signal.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
smp.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
socket.h
sockios.h
solerrno.h
sparsemem.h
spinlock_types.h
spinlock.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
spitfire.h
starfire.h
stat.h
statfs.h
string.h
sunbpp.h
svr4.h
system.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
termbits.h
termios.h
thread_info.h
timer.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
timex.h
tlb.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
tlbflush.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-05-06 19:59:18 +01:00
topology.h
tsb.h
ttable.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
types.h
uaccess.h
uctx.h
unaligned.h
unistd.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-05-24 09:22:21 +01:00
upa.h
user.h
utrap.h
vdev.h [SPARC64]: Convert sun4v virtual-device layer to in-kernel PROM device tree. 2006-06-23 23:15:13 -07:00
vga.h [PATCH] vgacon: make VGA_MAP_MEM take size, remove extra use 2006-06-22 15:05:58 -07:00
visasm.h
watchdog.h
xor.h