aboutsummaryrefslogtreecommitdiff
path: root/arch/sparc/include/asm/elf_64.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-06-01 08:02:31 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-06-01 08:02:31 -0700
commit65039a31f4e44630f96f1b602c43cc8ad180d4fe (patch)
tree33d671501970281f3587d97e7aba31c8f2e21cd6 /arch/sparc/include/asm/elf_64.h
parent6e429101849416551150dad451f7e8625317ae09 (diff)
parent6373fffc5d555caf3acf7c5796cec9820aaf7479 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Fix section attribute warnings. sparc64: Fix SET_PERSONALITY to not clip bits outside of PER_MASK.
Diffstat (limited to 'arch/sparc/include/asm/elf_64.h')
-rw-r--r--arch/sparc/include/asm/elf_64.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/sparc/include/asm/elf_64.h b/arch/sparc/include/asm/elf_64.h
index 425c2f9be6d5..d42e393078c4 100644
--- a/arch/sparc/include/asm/elf_64.h
+++ b/arch/sparc/include/asm/elf_64.h
@@ -208,8 +208,9 @@ do { unsigned long new_flags = current_thread_info()->flags; \
else \
clear_thread_flag(TIF_ABI_PENDING); \
/* flush_thread will update pgd cache */ \
- if (current->personality != PER_LINUX32) \
- set_personality(PER_LINUX); \
+ if (personality(current->personality) != PER_LINUX32) \
+ set_personality(PER_LINUX | \
+ (current->personality & (~PER_MASK))); \
} while (0)
#endif /* !(__ASM_SPARC64_ELF_H) */