freebsd-nq/sys/amd64
John Polstra 47633640aa Change the load address of the ELF dynamic linker from "2L*MAXDSIZ"
to an architecture-specific value defined in <machine/elf.h>.  This
solves problems on large-memory systems that have a high value for
MAXDSIZ.

The load address is controlled by a new macro ELF_RTLD_ADDR(vmspace).
On the i386 it is hard-wired to 0x08000000, which is the standard
SVR4 location for the dynamic linker.

On the Alpha, the dynamic linker is loaded MAXDSIZ bytes beyond
the start of the program's data segment.  This is the same place
a userland mmap(0, ...) call would put it, so it ends up just below
all the shared libraries.  The rationale behind the calculation is
that it allows room for the data segment to grow to its maximum
possible size.

These changes have been tested on the i386 for several months
without problems.  They have been tested on the Alpha as well,
though not for nearly as long.  I would like to merge the changes
into 3.1 within a week if no problems have surfaced as a result of
them.
1999-02-07 23:49:56 +00:00
..
amd64 Recognize Pentium II Xeon, Celeron and Pentium III cpus. Because CPU 1999-02-04 16:48:26 +00:00
conf replace previous stupid comment with one more appropriate 1999-02-04 22:34:23 +00:00
include Change the load address of the ELF dynamic linker from "2L*MAXDSIZ" 1999-02-07 23:49:56 +00:00
isa Unspammed includes in <machine/cpufunc.h> in the !SMP case. Partially 1999-01-08 19:17:49 +00:00
pci
Makefile Make this ${.OBJDIR} and ${.CURDIR} aware. 1998-05-31 22:40:49 +00:00