patch-2.1.86 linux/include/asm-alpha/elf.h

Next file: linux/include/asm-alpha/processor.h
Previous file: linux/include/asm-alpha/a.out.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.85/linux/include/asm-alpha/elf.h linux/include/asm-alpha/elf.h
@@ -1,5 +1,5 @@
-#ifndef __ASMaxp_ELF_H
-#define __ASMaxp_ELF_H
+#ifndef __ASM_ALPHA_ELF_H
+#define __ASM_ALPHA_ELF_H
 
 /*
  * ELF register definitions..
@@ -39,7 +39,7 @@
    the loader.  We need to make sure that it is out of the way of the program
    that it will "exec", and that there is sufficient room for the brk.  */
 
-#define ELF_ET_DYN_BASE		(2 * TASK_SIZE / 3)
+#define ELF_ET_DYN_BASE		(TASK_UNMAPPED_BASE + 0x1000000)
 
 /* $0 is set by ld.so to a pointer to a function which might be 
    registered using atexit.  This provides a mean for the dynamic
@@ -126,8 +126,10 @@
 })
 
 #ifdef __KERNEL__
-#define SET_PERSONALITY(ibcs2) \
-	current->personality = (ibcs2 ? PER_SVR4 : PER_LINUX)
+#define SET_PERSONALITY(EX, IBCS2)				\
+	current->personality =					\
+	  ((EX).e_flags & EF_ALPHA_32BIT			\
+	   ? PER_LINUX_32BIT : (IBCS2) ? PER_SVR4 : PER_LINUX)
 #endif
 
 #endif

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov