diff options
| -rw-r--r-- | arch/s390/include/asm/elf.h | 16 | 
1 files changed, 8 insertions, 8 deletions
| diff --git a/arch/s390/include/asm/elf.h b/arch/s390/include/asm/elf.h index d480f39d65e6..74d0bbb7d955 100644 --- a/arch/s390/include/asm/elf.h +++ b/arch/s390/include/asm/elf.h @@ -172,14 +172,14 @@ extern char elf_platform[];  #ifndef __s390x__  #define SET_PERSONALITY(ex) set_personality(PER_LINUX)  #else /* __s390x__ */ -#define SET_PERSONALITY(ex)				\ -do {							\ -	if (current->personality != PER_LINUX32)	\ -		set_personality(PER_LINUX);		\ -	if ((ex).e_ident[EI_CLASS] == ELFCLASS32)	\ -		set_thread_flag(TIF_31BIT);		\ -	else						\ -		clear_thread_flag(TIF_31BIT);		\ +#define SET_PERSONALITY(ex)					\ +do {								\ +	if (personality(current->personality) != PER_LINUX32)	\ +		set_personality(PER_LINUX);			\ +	if ((ex).e_ident[EI_CLASS] == ELFCLASS32)		\ +		set_thread_flag(TIF_31BIT);			\ +	else							\ +		clear_thread_flag(TIF_31BIT);			\  } while (0)  #endif /* __s390x__ */ | 
