kernel_optimize_test/arch/mn10300/include/asm
Peter Zijlstra 3e4d3af501 mm: stack based kmap_atomic()
Keep the current interface but ignore the KM_type and use a stack based
approach.

The advantage is that we get rid of crappy code like:

	#define __KM_PTE			\
		(in_nmi() ? KM_NMI_PTE : 	\
		 in_irq() ? KM_IRQ_PTE :	\
		 KM_PTE0)

and in general can stop worrying about what context we're in and what kmap
slots might be appropriate for that.

The downside is that FRV kmap_atomic() gets more expensive.

For now we use a CPP trick suggested by Andrew:

  #define kmap_atomic(page, args...) __kmap_atomic(page)

to avoid having to touch all kmap_atomic() users in a single patch.

[ not compiled on:
  - mn10300: the arch doesn't actually build with highmem to begin with ]

[akpm@linux-foundation.org: coding-style fixes]
[akpm@linux-foundation.org: fix up drivers/gpu/drm/i915/intel_overlay.c]
Acked-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Chris Metcalf <cmetcalf@tilera.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: David Miller <davem@davemloft.net>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Dave Airlie <airlied@linux.ie>
Cc: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-10-26 16:52:08 -07:00
..
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
atomic.h mn10300: use generic atomic.h 2010-05-25 08:07:02 -07:00
auxvec.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
bitops.h MN10300: Fix endianess of ext2 bitops 2010-09-23 09:12:21 -07:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h MN10300: Stop gcc from generating uninitialised variable warnings after BUG() 2009-04-15 13:55:13 -07:00
bugs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
busctl-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
byteorder.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
cache.h dma-mapping: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN 2010-08-11 08:59:21 -07:00
cacheflush.h block: add helpers to run flush_dcache_page() against a bio and a request's pages 2009-11-26 09:16:19 +01:00
checksum.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
cpu-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
cputime.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
current.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
delay.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
device.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
div64.h mn10300: add cc clobbers to asm statements 2010-01-11 09:34:10 -08:00
dma-mapping.h dma-mapping: remove dma_is_consistent API 2010-08-11 08:59:21 -07:00
dma.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
dmactl-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
elf.h elf: kill USE_ELF_CORE_DUMP 2009-12-16 07:20:12 -08:00
emergency-restart.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
errno.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
exceptions.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
fb.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
fcntl.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
fpu.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
frame.inc Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
ftrace.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
futex.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
gdb-stub.h MN10300: Use no_printk() for disabled gdbstub debugging functions 2010-08-12 09:51:35 -07:00
hardirq.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
highmem.h mm: stack based kmap_atomic() 2010-10-26 16:52:08 -07:00
hw_irq.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
intctl-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
io.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
ioctl.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
ioctls.h ioctl: Use asm-generic/ioctls.h on mn10300 (enables termiox) 2010-10-22 10:20:01 -07:00
ipc.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
ipcbuf.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
irq_regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
irq.h Separate out the proc- and unit-specific header directories from the general 2009-04-10 14:33:48 +01:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
Kbuild Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
kdebug.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
kprobes.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
linkage.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
local.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
mc146818rtc.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
mman.h arch_mmap_check() on mn10300 2009-12-11 06:34:10 -05:00
mmu_context.h cpumask: use mm_cpumask() wrapper: mn10300 2009-09-24 09:34:50 +09:30
mmu.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
module.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
msgbuf.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
mutex.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
nmi.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
page_offset.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
page.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
param.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
pci.h PCI: remove pcibios_scan_all_fns() 2009-09-09 13:29:18 -07:00
percpu.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
pgalloc.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
pgtable.h MM: Pass a PTE pointer to update_mmu_cache() rather than the PTE itself 2010-02-20 16:41:46 +00:00
pio-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
poll.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
posix_types.h MN10300: Fix size_t and ssize_t 2010-08-12 09:51:35 -07:00
processor.h MN10300: Add utrace/tracehooks support 2009-06-11 09:02:20 -07:00
ptrace.h ptrace: move user_enable_single_step & co prototypes to linux/ptrace.h 2010-03-12 15:52:38 -08:00
reset-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
resource.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
rtc-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
rtc.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
sections.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
sembuf.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
serial-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
serial.h Separate out the proc- and unit-specific header directories from the general 2009-04-10 14:33:48 +01:00
setup.h headers_check fix: mn10300, setup.h 2009-06-14 11:51:12 +05:30
shmbuf.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
shmparam.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
sigcontext.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
siginfo.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
signal.h MN10300: Fix SIGRTMAX 2010-09-23 10:20:57 -07:00
smp.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
spinlock.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
stat.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
statfs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
string.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
swab.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
system.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
termbits.h tty: Add EXTPROC support for LINEMODE 2010-08-10 13:47:39 -07:00
termios.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
thread_info.h add descriptive comment for TIF_MEMDIE task flag declaration. 2010-05-14 11:13:27 +02:00
timer-regs.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
timex.h Separate out the proc- and unit-specific header directories from the general 2009-04-10 14:33:48 +01:00
tlb.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
tlbflush.h mn10300: add cc clobbers to asm statements 2010-01-11 09:34:10 -08:00
topology.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
types.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
uaccess.h mn10300: add cc clobbers to asm statements 2010-01-11 09:34:10 -08:00
ucontext.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
unaligned.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
unistd.h Add generic sys_ipc wrapper 2010-03-12 15:52:32 -08:00
user.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
vga.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00
xor.h Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. 2009-04-10 14:19:03 +01:00