1
linux/include/asm-um
Paolo 'Blaisorblade' Giarrusso 47e5243afe [PATCH] uml: make copy_*_user atomic
Make __copy_*_user_inatomic really atomic to avoid "Sleeping function called in
atomic context" warnings, especially from futex code.

This is made by adding another kmap_atomic slot and making copy_*_user_skas
use kmap_atomic; also copy_*_user() becomes atomic, but that's true and is not
a problem for i386 (and we can always add might_sleep there as done
elsewhere).  For TT mode kmap is not used, so there's no need for this.

I've had to use another slot since both KM_USER0 and KM_USER1 are used
elsewhere and could cause conflicts.  Till now we reused the kmap_atomic slot
list from the subarch, but that's not needed as that list must contain the
common ones (used by generic code) + the ones used in architecture specific
code (and Uml till now used none); so I've taken the i386 one after comparing
it with ones from other archs, and added KM_UML_USERCOPY.

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-07-01 09:56:03 -07:00
..
a.out.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
alternative.h [PATCH] x86: SMP alternatives 2006-03-23 07:38:04 -08:00
apic.h
archparam-i386.h
archparam-ppc.h
archparam-x86_64.h
atomic.h
auxvec.h [PATCH] auxiliary vector cleanups 2005-09-07 16:57:21 -07:00
bitops.h
boot.h
bug.h
bugs.h
byteorder.h
cache.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
cacheflush.h
calling.h
checksum.h
cobalt.h
common.lds.S
cpufeature.h
cputime.h
current.h
delay.h
desc.h [PATCH] uml: implement {get,set}_thread_area for i386 2006-03-31 12:18:52 -08:00
div64.h
dma-mapping.h [PATCH] gfp_t: dma-mapping (simple cases) 2005-10-28 08:16:49 -07:00
dma.h
dwarf2.h
elf-i386.h
elf-ppc.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
elf-x86_64.h
emergency-restart.h [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
errno.h
fcntl.h
fixmap.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
floppy.h
futex.h [PATCH] consolidate asm/futex.h 2006-01-08 20:13:39 -08:00
hardirq.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
highmem.h
host_ldt-i386.h [PATCH] uml: split ldt.h in arch-independent and arch-dependant code 2006-03-31 12:18:51 -08:00
host_ldt-x86_64.h [PATCH] uml: split ldt.h in arch-independent and arch-dependant code 2006-03-31 12:18:51 -08:00
hw_irq.h [PATCH] genirq: add ->retrigger() irq op to consolidate hw_irq_resend() 2006-06-29 10:26:23 -07:00
ide.h
io.h [PATCH] uml: add __raw_writeq definition 2006-06-30 11:25:38 -07:00
ioctl.h
ioctls.h
ipc.h
ipcbuf.h
irq_vectors.h
irq.h
irqflags.h [PATCH] uml: add asm/irqflags.h 2006-06-05 12:29:17 -07:00
keyboard.h
kmap_types.h [PATCH] uml: make copy_*_user atomic 2006-07-01 09:56:03 -07:00
ldt.h [PATCH] uml: split ldt.h in arch-independent and arch-dependant code 2006-03-31 12:18:51 -08:00
linkage.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
local.h
locks.h
mca_dma.h
mman.h
mmu_context.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
mmu.h
module-generic.h
module-i386.h
module-x86_64.h
msgbuf.h
mtrr.h
mutex.h [PATCH] mutex subsystem, add default include/asm-*/mutex.h files 2006-01-09 15:59:19 -08:00
namei.h
page_offset.h
page.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
param.h
pci.h
pda.h
percpu.h
pgalloc.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
pgtable-2level.h [PATCH] uml: merge duplicated page table code 2005-09-05 00:06:22 -07:00
pgtable-3level.h [PATCH] uml: fix x86_64 page leak 2005-09-05 00:06:24 -07:00
pgtable.h [PATCH] mm: pte_offset_map_lock loops 2005-10-29 21:40:40 -07:00
poll.h
posix_types.h
prctl.h
processor-generic.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
processor-i386.h [PATCH] uml: implement {get,set}_thread_area for i386 2006-03-31 12:18:52 -08:00
processor-ppc.h
processor-x86_64.h [PATCH] uml: implement {get,set}_thread_area for i386 2006-03-31 12:18:52 -08:00
ptrace-generic.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
ptrace-i386.h [PATCH] uml: fix "extern-vs-static" proto conflict in TLS code 2006-04-11 06:18:36 -07:00
ptrace-x86_64.h [PATCH] uml: implement {get,set}_thread_area for i386 2006-03-31 12:18:52 -08:00
resource.h
rwlock.h
rwsem.h [PATCH] remove gcc-2 checks 2006-01-08 20:14:02 -08:00
scatterlist.h
sections.h
segment.h [PATCH] uml: check for differences in host support 2006-03-31 12:18:52 -08:00
semaphore.h
sembuf.h
serial.h
setup.h
shmbuf.h
shmparam.h
sigcontext-generic.h
sigcontext-i386.h
sigcontext-ppc.h
sigcontext-x86_64.h
siginfo.h
signal.h
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
spinlock_types.h [PATCH] uml spinlock breakage 2005-09-10 16:50:01 -07:00
spinlock.h
stat.h
statfs.h
string.h
suspend.h
system-generic.h
system-i386.h [PATCH] uml: UML/i386 cmpxchg fix 2005-09-17 11:50:01 -07:00
system-ppc.h
system-x86_64.h
termbits.h
termios.h
thread_info.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
timex.h
tlb.h
tlbflush.h
topology.h
types.h
uaccess.h [PATCH] uml: more __user annotations 2006-06-05 12:29:17 -07:00
ucontext.h
unaligned.h
unistd.h [PATCH] uml: use generic sys_rt_sigsuspend 2006-01-18 19:20:30 -08:00
user.h
vga.h
vm86.h [PATCH] uml: vm86 compile fix 2005-07-28 21:46:03 -07:00
vm-flags-i386.h
vm-flags-x86_64.h
xor.h