linux/arch/m32r/include/asm
Jiri Kosina 16f3e95b32 cross-arch: don't corrupt personality flags upon exec()
Historically, the top three bytes of personality have been used for
things such as ADDR_NO_RANDOMIZE, which made sense only for specific
architectures.

We now however have a flag there that is general no matter the
architecture (UNAME26); generally we have to be careful to preserve the
personality flags across exec().

This patch tries to fix all architectures that forcefully overwrite
personality flags during exec() (ppc32 and s390 have been fixed recently
by commits f9783ec862 ("[S390] Do not clobber personality flags on
exec") and 59e4c3a2fe ("powerpc/32: Don't clobber personality flags on
exec") in a similar way already).

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Mark Salter <msalter@redhat.com>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Richard Kuo <rkuo@codeaurora.org>
Cc: Hirokazu Takata <takata@linux-m32r.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Chen Liqin <liqin.chen@sunplusct.com>
Cc: Lennox Wu <lennox.wu@gmail.com>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Chris Zankel <chris@zankel.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-10-06 03:04:47 +09:00
..
m32104ut Fix common misspellings 2011-03-31 11:26:23 -03:00
m32700ut Fix common misspellings 2011-03-31 11:26:23 -03:00
mappi2 m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
mappi3 m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
opsput Fix common misspellings 2011-03-31 11:26:23 -03:00
addrspace.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
assembler.h m32r: use __stringify() macro in assembler.h 2009-05-02 22:38:21 +09:00
atomic.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
auxvec.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
barrier.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
bitops.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
bugs.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
byteorder.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
cache.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
cachectl.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09: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 m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
cmpxchg.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
cputime.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
current.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
dcache_clear.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
delay.h asm-generic: move archictures to common delay.h 2011-07-22 18:46:24 +02:00
device.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
div64.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
dma.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
elf.h cross-arch: don't corrupt personality flags upon exec() 2012-10-06 03:04:47 +09:00
emergency-restart.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
errno.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
exec.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
fb.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
fcntl.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
flat.h flat: fix data sections alignment 2009-05-29 08:40:02 -07:00
ftrace.h m32r: move include/asm-m32r/* to arch/m32r/include/asm/ 2009-04-17 10:50:23 +09:00
futex.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
hardirq.h m32r: convert to asm-generic/hardirq.h 2009-09-22 07:17:43 -07:00
hw_irq.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
io.h m32r: define ioread* and iowrite* macros 2009-10-04 12:02:36 +09:00
ioctl.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
ioctls.h ioctl: Use asm-generic/ioctls.h on m32r (enables termiox) 2010-10-22 10:20:00 -07:00
ipcbuf.h consolidate a bunch of ipcbuf.h instances 2012-01-03 22:55:18 -05:00
irq_regs.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
irq.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
Kbuild m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
kdebug.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
linkage.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
local.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
m32r_mp_fpga.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
m32r.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
m32102.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
mc146818rtc.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
mman.h mm: remove duplicate asm/mman.h files 2009-09-22 07:17:42 -07:00
mmu_context.h atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
mmu.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
mmzone.h Fix node_start/end_pfn() definition for mm/page_cgroup.c 2011-06-27 14:13:09 -07:00
module.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
msgbuf.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
mutex.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
page.h m32r: make PAGE_SIZE available to assembly. 2009-09-23 00:29:38 +09:00
param.h UAPI: Make M32R use asm-generic/param.h 2011-12-12 13:56:03 +00:00
pci.h asm-generic: make pci.h usable directly 2009-06-11 21:02:22 +02:00
percpu.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
pgalloc.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
pgtable-2level.h Fix common misspellings 2011-03-31 11:26:23 -03:00
pgtable.h mm: remove pte_*map_nested() 2010-10-26 16:52:08 -07:00
poll.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
posix_types.h bury __kernel_nlink_t, make internal nlink_t consistent 2012-05-30 21:04:50 -04:00
processor.h fork: move the real prepare_to_copy() users to arch_dup_task_struct() 2012-05-16 15:16:26 -07:00
ptrace.h m32r: remove duplicate definition of PTRACE_O_TRACESYSGOOD 2012-07-17 16:21:30 -07:00
resource.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
rtc.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
s1d13806.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
sections.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
segment.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
sembuf.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
serial.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
setup.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
shmbuf.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
shmparam.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
sigcontext.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
siginfo.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
signal.h m32r: struct old_sigaction is never used 2012-05-21 23:59:20 -04:00
smp.h smp: Remove num_booting_cpus() 2012-06-05 17:32:30 +02:00
socket.h net: Add framework to allow sending packets with customized CRC. 2012-02-24 01:37:35 -08:00
sockios.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spinlock.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
stat.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
statfs.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
string.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
swab.h m32r: move include/asm-m32r/* to arch/m32r/include/asm/ 2009-04-17 10:50:23 +09:00
switch_to.h Disintegrate asm/system.h for M32R 2012-03-28 18:30:02 +01:00
syscall.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
termbits.h tty: Add EXTPROC support for LINEMODE 2010-08-10 13:47:39 -07:00
termios.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
thread_info.h m32r: Use common threadinfo allocator 2012-05-08 14:08:45 +02:00
timex.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
tlb.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
tlbflush.h MM: Pass a PTE pointer to update_mmu_cache() rather than the PTE itself 2010-02-20 16:41:46 +00:00
topology.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
types.h consolidate umode_t declarations 2012-01-03 22:55:17 -05:00
uaccess.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
ucontext.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
unaligned.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
unistd.h ipc: use Kconfig options for __ARCH_WANT_[COMPAT_]IPC_PARSE_VERSION 2012-07-30 17:25:21 -07:00
user.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
vga.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00
xor.h m32r: move include/asm-m32r headers to arch/m32r/include/asm 2009-04-17 10:05:01 +09:00