linux-stable-rt/arch/sparc/include/asm
H. Peter Anvin c41d68a513 compat: Make compat_alloc_user_space() incorporate the access_ok()
compat_alloc_user_space() expects the caller to independently call
access_ok() to verify the returned area.  A missing call could
introduce problems on some architectures.

This patch incorporates the access_ok() check into
compat_alloc_user_space() and also adds a sanity check on the length.
The existing compat_alloc_user_space() implementations are renamed
arch_compat_alloc_user_space() and are used as part of the
implementation of the new global function.

This patch assumes NULL will cause __get_user()/__put_user() to either
fail or access userspace on all architectures.  This should be
followed by checking the return value of compat_access_user_space()
for NULL in the callers, at which time the access_ok() in the callers
can also be removed.

Reported-by: Ben Hawkes <hawkes@sota.gen.nz>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Chris Metcalf <cmetcalf@tilera.com>
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Tony Luck <tony.luck@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Helge Deller <deller@gmx.de>
Cc: James Bottomley <jejb@parisc-linux.org>
Cc: Kyle McMartin <kyle@mcmartin.ca>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: <stable@kernel.org>
2010-09-14 16:08:45 -07:00
..
Kbuild
agp.h
apb.h
apc.h
asi.h
asm-offsets.h
asm.h
asmmacro.h
atomic.h
atomic_32.h atomic_t: Cast to volatile when accessing atomic variables 2010-05-17 07:57:27 -07:00
atomic_64.h sparc64: Really fix atomic64_t interface types. 2010-08-17 21:44:13 -07:00
auxio.h
auxio_32.h
auxio_64.h
auxvec.h
backoff.h sparc64: Make lock backoff really a NOP on UP builds. 2010-08-18 22:53:26 -07:00
bbc.h
bitext.h
bitops.h
bitops_32.h
bitops_64.h bitops: Optimize hweight() by making use of compile-time evaluation 2010-04-06 15:52:11 -07:00
bitsperlong.h
btext.h
btfixup.h
bug.h
bugs.h
byteorder.h
cache.h sparc: remove homegrown L1_CACHE_ALIGN macro 2010-06-29 00:38:02 -07:00
cacheflush.h
cacheflush_32.h
cacheflush_64.h
chafsr.h
checksum.h
checksum_32.h
checksum_64.h
chmctrl.h
clock.h
cmt.h
compat.h compat: Make compat_alloc_user_space() incorporate the access_ok() 2010-09-14 16:08:45 -07:00
compat_signal.h
contregs.h
cpudata.h
cpudata_32.h
cpudata_64.h sparc64: Use a seperate counter for timer interrupts and NMI checks, like x86. 2010-04-12 22:37:07 -07:00
cputime.h
current.h
cypress.h
dcr.h
dcu.h
delay.h
delay_32.h
delay_64.h
device.h of: remove asm/of_device.h 2010-07-24 09:57:52 -06:00
display7seg.h
div64.h
dma-mapping.h dma-mapping: remove dma_is_consistent API 2010-08-11 08:59:21 -07:00
dma.h
ebus_dma.h
ecc.h
eeprom.h
elf.h
elf_32.h
elf_64.h
emergency-restart.h
envctrl.h
errno.h
estate.h
fb.h sparc: Really fix "console=" for serial consoles. 2010-08-16 12:26:09 -07:00
fbio.h
fcntl.h
fhc.h
fixmap.h
floppy.h
floppy_32.h
floppy_64.h of/device: Replace of_device with platform_device in includes and core code 2010-07-24 09:58:21 -06:00
fpumacro.h
ftrace.h
futex.h
futex_32.h
futex_64.h
gpio.h
hardirq.h
hardirq_32.h
hardirq_64.h
head.h
head_32.h
head_64.h
highmem.h kmap_atomic: make kunmap_atomic() harder to misuse 2010-08-09 20:44:54 -07:00
hugetlb.h
hvtramp.h
hw_irq.h
hypervisor.h
ide.h
idprom.h
intr_queue.h
io-unit.h
io.h
io_32.h
io_64.h
ioctl.h
ioctls.h tty: Add EXTPROC support for LINEMODE 2010-08-10 13:47:39 -07:00
iommu.h
iommu_32.h
iommu_64.h
ipcbuf.h
irq.h
irq_32.h
irq_64.h
irq_regs.h
irqflags.h
irqflags_32.h
irqflags_64.h sparc64: Add some more commentary to __raw_local_irq_save() 2010-04-13 01:50:43 -07:00
jsflash.h
kdebug.h
kdebug_32.h
kdebug_64.h
kgdb.h
kmap_types.h
kprobes.h
ldc.h
leon.h
leon_amba.h
linkage.h
local.h
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
lsu.h
machines.h
mbus.h
mc146818rtc.h
mc146818rtc_32.h
mc146818rtc_64.h
mdesc.h
memblock.h lmb: rename to memblock 2010-07-14 17:14:00 +10:00
memctrl.h
memreg.h
mman.h
mmu.h
mmu_32.h
mmu_64.h
mmu_context.h
mmu_context_32.h
mmu_context_64.h
mmzone.h
module.h
mpmbox.h
msgbuf.h
msi.h
mutex.h
mxcc.h
nmi.h
ns87303.h
obio.h
openprom.h
openpromio.h
oplib.h
oplib_32.h
oplib_64.h sparc64: Get rid of indirect p1275 PROM call buffer. 2010-08-23 23:10:57 -07:00
page.h
page_32.h
page_64.h
param.h
parport.h sparc64: Add missing ID to parport probing code. 2010-08-08 22:07:22 -07:00
pbm.h
pci.h
pci_32.h
pci_64.h
pcic.h
pcr.h
percpu.h
percpu_32.h
percpu_64.h
perf_event.h sparc64: Fix perf_arch_get_caller_regs(). 2010-08-08 22:07:36 -07:00
perfctr.h
pgalloc.h
pgalloc_32.h
pgalloc_64.h
pgtable.h
pgtable_32.h sparc32: Kill none_mask, it's bogus. 2010-05-25 23:36:31 -07:00
pgtable_64.h
pgtsrmmu.h
pgtsun4.h
pgtsun4c.h
pil.h
poll.h
posix_types.h
processor.h
processor_32.h
processor_64.h
prom.h of: Provide default of_node_to_nid() implementation. 2010-07-30 00:03:58 -06:00
psr.h
psrcompat.h
pstate.h
ptrace.h
resource.h
ross.h
rwsem.h sparc64: Make rwsems 64-bit. 2010-08-17 22:49:26 -07:00
sbi.h
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
scratchpad.h
seccomp.h
sections.h
sembuf.h
serial.h
setup.h
sfafsr.h
sfp-machine.h
sfp-machine_32.h
sfp-machine_64.h
shmbuf.h
shmparam.h
shmparam_32.h
shmparam_64.h
sigcontext.h
siginfo.h
signal.h
smp.h
smp_32.h
smp_64.h
smpprim.h
socket.h
sockios.h
sparsemem.h
spinlock.h
spinlock_32.h
spinlock_64.h
spinlock_types.h
spitfire.h
stacktrace.h
starfire.h
stat.h sparc: Fix use of uid16_t and gid16_t in asm/stat.h 2010-03-27 08:36:18 -07:00
statfs.h
string.h
string_32.h
string_64.h
sunbpp.h
swab.h
swift.h
syscall.h
syscalls.h
sysen.h
system.h
system_32.h
system_64.h sparc64: Fill a missing delay slot. 2010-08-19 14:15:32 -07:00
termbits.h tty: Add EXTPROC support for LINEMODE 2010-08-10 13:47:39 -07:00
termios.h
thread_info.h
thread_info_32.h add descriptive comment for TIF_MEMDIE task flag declaration. 2010-05-14 11:13:27 +02:00
thread_info_64.h add descriptive comment for TIF_MEMDIE task flag declaration. 2010-05-14 11:13:27 +02:00
timer.h
timer_32.h
timer_64.h
timex.h
timex_32.h
timex_64.h
tlb.h
tlb_32.h
tlb_64.h
tlbflush.h
tlbflush_32.h
tlbflush_64.h
topology.h
topology_32.h
topology_64.h
trap_block.h
traps.h
tsb.h
tsunami.h
ttable.h
turbosparc.h
types.h
uaccess.h
uaccess_32.h sparc: Kill user copy check code. 2010-08-09 00:45:46 -07:00
uaccess_64.h sparc: Kill user copy check code. 2010-08-09 00:45:46 -07:00
uctx.h
unaligned.h
unistd.h sparc: Hook up new fanotify and prlimit64 syscalls. 2010-08-16 15:04:29 -07:00
upa.h
user.h
utrap.h
vac-ops.h
vaddrs.h
vga.h
viking.h
vio.h
visasm.h
watchdog.h
winmacro.h
xor.h
xor_32.h
xor_64.h