linux-cvs-patches
[Top] [All Lists]

CVS Update@linux-mips.org: linux

To: linux-cvs-patches@linux-mips.org
Subject: CVS Update@linux-mips.org: linux
From: ralf@linux-mips.org
Date: Fri, 03 Jun 2005 16:32:12 +0100
Reply-to: linux-mips@linux-mips.org
Sender: linux-cvs-patches-bounce@linux-mips.org
CVSROOT:        /home/cvs
Module name:    linux
Changes by:     ralf@ftp.linux-mips.org 05/06/03 16:32:06

Modified files:
        include/asm-mips: elf.h 

Log message:
        Fix 64-bit breakage after DSP ASE support.

diff -urN linux/include/asm-mips/elf.h linux/include/asm-mips/elf.h
--- linux/include/asm-mips/elf.h        2005/05/31 11:49:19     1.27
+++ linux/include/asm-mips/elf.h        2005/06/03 15:32:05     1.28
@@ -216,7 +216,10 @@
 
 #ifdef CONFIG_MIPS32_N32
 #define __SET_PERSONALITY32_N32()                                      \
-       do { current->thread.abi = &mips_abi_n32; } while (0)
+       do {                                                            \
+               current->thread.mflags |= MF_N32;                       \
+               current->thread.abi = &mips_abi_n32;                    \
+       } while (0)
 #else
 #define __SET_PERSONALITY32_N32()                                      \
        do { } while (0)
@@ -224,7 +227,10 @@
 
 #ifdef CONFIG_MIPS32_O32
 #define __SET_PERSONALITY32_O32()                                      \
-       do { current->thread.abi = &mips_abi_32; } while (0)
+       do {                                                            \
+               current->thread.mflags |= MF_O32;                       \
+               current->thread.abi = &mips_abi_32;                     \
+       } while (0)
 #else
 #define __SET_PERSONALITY32_O32()                                      \
        do { } while (0)
@@ -244,11 +250,14 @@
 #endif
 
 #define SET_PERSONALITY(ex, ibcs2)                                     \
-do {   current->thread.mflags &= ~MF_ABI_MASK;                         \
+do {                                                                   \
+       current->thread.mflags &= ~MF_ABI_MASK;                         \
        if ((ex).e_ident[EI_CLASS] == ELFCLASS32)                       \
                __SET_PERSONALITY32(ex);                                \
-       else                                                            \
+       else {                                                          \
+               current->thread.mflags |= MF_N64;                       \
                current->thread.abi = &mips_abi;                        \
+       }                                                               \
                                                                        \
        if (ibcs2)                                                      \
                set_personality(PER_SVR4);                              \

<Prev in Thread] Current Thread [Next in Thread>