diff options
| author | David S. Miller <davem@davemloft.net> | 2009-05-07 15:36:13 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2009-05-07 15:36:13 -0700 | 
| commit | d3584183d2f40f40371e288ceef187d04da213b5 (patch) | |
| tree | e49f88bd366a48e2bb431a0dbaaf48e18353421a | |
| parent | 956d039a2537cf79ca608450d36cc70e0e515482 (diff) | |
| download | olio-linux-3.10-d3584183d2f40f40371e288ceef187d04da213b5.tar.xz olio-linux-3.10-d3584183d2f40f40371e288ceef187d04da213b5.zip  | |
sparc64: Fix SET_PERSONALITY to not clip bits outside of PER_MASK.
Signed-off-by: David S. Miller <davem@davemloft.net>
| -rw-r--r-- | arch/sparc/include/asm/elf_64.h | 5 | 
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 425c2f9be6d..d42e393078c 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) */  |