aboutsummaryrefslogtreecommitdiff
path: root/sys/amd64/include/elf.h
diff options
context:
space:
mode:
authorJohn Polstra <jdp@FreeBSD.org>1999-02-19 01:30:43 +0000
committerJohn Polstra <jdp@FreeBSD.org>1999-02-19 01:30:43 +0000
commit0aca4b60dc6ae921986024403bf3a0f44ab3c4b3 (patch)
tree40dc2f9000368d3fd5214f9f04ecbff87b826ea0 /sys/amd64/include/elf.h
parent36f6982577c19a43a94e6ca746612c014e438a76 (diff)
Notes
Diffstat (limited to 'sys/amd64/include/elf.h')
-rw-r--r--sys/amd64/include/elf.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/sys/amd64/include/elf.h b/sys/amd64/include/elf.h
index c6bedaf8e306..ac0cce3ee0e9 100644
--- a/sys/amd64/include/elf.h
+++ b/sys/amd64/include/elf.h
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: elf.h,v 1.5 1998/10/18 15:31:23 peter Exp $
+ * $Id: elf.h,v 1.6 1999/02/07 23:49:55 jdp Exp $
*/
#ifndef _MACHINE_ELF_H_
@@ -121,11 +121,13 @@ __ElfType(Auxinfo);
#ifdef KERNEL
/*
- * On the i386 we load the dynamic linker at a fixed address,
- * below where the executable itself is loaded. This is the
- * standard SVR4 location for it.
+ * On the i386 we load the dynamic linker where a userland call
+ * to mmap(0, ...) would put it. The rationale behind this
+ * calculation is that it leaves room for the heap to grow to
+ * its maximum allowed size.
*/
-#define ELF_RTLD_ADDR(vmspace) 0x08000000
+#define ELF_RTLD_ADDR(vmspace) \
+ (round_page((vm_offset_t)(vmspace)->vm_daddr + MAXDSIZ))
#endif /* KERNEL */
#endif /* !_MACHINE_ELF_H_ */