linux/arch
Jiri Kosina d37bcccee1 sparc64: do not clobber personality flags in sys_sparc64_personality()
[ Upstream commit a27032eee8 ]

There are multiple errors in how sys_sparc64_personality() handles
personality flags stored in top three bytes.

- directly comparing current->personality against PER_LINUX32 doesn't work
  in cases when any of the personality flags stored in the top three bytes
  are used.
- directly forcefully setting personality to PER_LINUX32 or PER_LINUX
  discards any flags stored in the top three bytes

Fix the first one by properly using personality() macro to compare only
PER_MASK bytes.
Fix the second one by setting only the bits that should be set, instead of
overwriting the whole value.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-10-28 10:14:16 -07:00
..
alpha alpha: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:54 +09:00
arm ARM: 7541/1: Add ARM ERRATA 775420 workaround 2012-10-21 09:27:58 -07:00
avr32 avr32: fix nop compile fails from system.h split up 2012-04-04 08:23:44 -07:00
blackfin blackfin: fix ifdef fustercluck in mach-bf538/boards/ezkit.c 2012-04-26 14:46:51 -04:00
c6x irq: Kill pointless irqd_to_hw export 2012-04-10 22:39:17 -06:00
cris cris: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:54 +09:00
frv frv: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:54 +09:00
h8300 h8300: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:53 +09:00
hexagon hexagon: add missing cpu.h include 2012-04-23 12:57:24 -05:00
ia64 ia64: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:53 +09:00
m32r m32r: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:55 +09:00
m68k m68k: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:54 +09:00
microblaze microblaze: Do not select GENERIC_GPIO by default 2012-06-10 00:36:05 +09:00
mips mips,kgdb: fix recursive page fault with CONFIG_KPROBES 2012-10-21 09:27:57 -07:00
mn10300 mn10300: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:54 +09:00
openrisc Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
parisc parisc: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:53 +09:00
powerpc powerpc/eeh: Fix crash on converting OF node to edev 2012-10-13 05:38:39 +09:00
s390 s390: fix linker script for 31 bit builds 2012-10-28 10:14:13 -07:00
score score: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:55 +09:00
sh sh: Fix up tracepoint build fallout from static key introduction. 2012-04-27 11:12:38 +09:30
sparc sparc64: do not clobber personality flags in sys_sparc64_personality() 2012-10-28 10:14:16 -07:00
tile arch/tile: avoid generating .eh_frame information in modules 2012-10-28 10:14:12 -07:00
um um: Implement a custom pte_same() function 2012-06-01 15:18:18 +08:00
unicore32 Merge branch 'for-linus' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping 2012-04-04 17:13:43 -07:00
x86 xen/x86: don't corrupt %eip when returning from a signal handler 2012-10-28 10:14:13 -07:00
xtensa xtensa: Add missing RCU idle APIs on idle loop 2012-10-13 05:38:54 +09:00
.gitignore
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile 2012-03-29 14:49:45 -07:00