freebsd-nq/sys/kern
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
..
bus_if.m My changes to the new device interface: 1998-11-14 21:58:51 +00:00
device_if.m My changes to the new device interface: 1998-11-14 21:58:51 +00:00
imgact_aout.c *_execsw static structures cannot be const due to the way they interact 1999-01-29 22:59:43 +00:00
imgact_elf.c Change the load address of the ELF dynamic linker from "2L*MAXDSIZ" 1999-02-07 23:49:56 +00:00
imgact_gzip.c *_execsw static structures cannot be const due to the way they interact 1999-01-29 22:59:43 +00:00
imgact_shell.c *_execsw static structures cannot be const due to the way they interact 1999-01-29 22:59:43 +00:00
inflate.c kzipboot uses kern/inflate.c outside the kernel by providing its own 1998-11-10 09:08:49 +00:00
init_main.c Remove unused "kern.shutdown_timeout" sysctl node. 1999-01-30 19:36:02 +00:00
init_sysent.c regenerate (+kldsym) 1998-11-11 12:57:05 +00:00
kern_acct.c Moved limit frobbing (and the resulting limcopy()) that occurs for 1998-06-05 21:44:20 +00:00
kern_clock.c Make the previous behaviour the default, add a sysctl which you 1998-11-29 20:31:02 +00:00
kern_conf.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
kern_descrip.c Split DIAGNOSTIC -> DIAGNOSTIC, INVARIANTS, and INVARIANT_SUPPORT as 1999-01-08 17:31:30 +00:00
kern_environment.c Fix warnings related to -Wall -Wcast-qual 1999-01-28 17:32:05 +00:00
kern_exec.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 00:57:57 +00:00
kern_exit.c Added comments about non-staticization so it doesn't get un-done next 1999-01-31 03:15:13 +00:00
kern_fork.c Enable Linux threads support by default. 1999-01-26 02:38:12 +00:00
kern_intr.c add #include <sys/kernel.h> where it's needed by MALLOC_DEFINE() 1998-11-10 09:16:29 +00:00
kern_ktrace.c In ktrwrite, use uio_procp = curproc vs 0 1998-12-10 01:47:41 +00:00
kern_linker.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 23:45:44 +00:00
kern_lkm.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
kern_lock.c Add 'options DEBUG_LOCKS', which stores extra information in struct 1999-01-20 14:49:12 +00:00
kern_lockf.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
kern_malloc.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
kern_mib.c Ok, people didn't like kern.conf_dir. Poof, backed out. 1999-01-26 07:37:11 +00:00
kern_module.c More -Wall / -Wcast-qual cleanup. Also, EXEC_SET can't use 1999-01-29 08:36:45 +00:00
kern_ntptime.c Introduce std_pps_ioctl() to automagically DTRT. 1998-06-13 09:30:26 +00:00
kern_physio.c This is a rather large commit that encompasses the new swapper, 1999-01-21 08:29:12 +00:00
kern_proc.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 00:57:57 +00:00
kern_prot.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 00:57:57 +00:00
kern_random.c Converted add_interrupt_randomness() to take a `void *' arg. Rewrote 1998-06-21 11:33:32 +00:00
kern_resource.c Added comments about non-staticization so it doesn't get un-done next 1999-01-31 03:15:13 +00:00
kern_shutdown.c An error in the last commit; the changes were submitted by, not reviewed by, 1999-01-30 19:29:10 +00:00
kern_sig.c Enable Linux threads support by default. 1999-01-26 02:38:12 +00:00
kern_subr.c Switch context before doing some i/o operations that might block if 1999-02-02 12:11:01 +00:00
kern_synch.c KNFize, by bde. 1999-01-10 01:58:29 +00:00
kern_syscalls.c Move lkmnosys() from kern_lkm.c to here. 1999-01-17 18:58:04 +00:00
kern_sysctl.c Back out last change to sysctl. 1999-01-10 07:45:33 +00:00
kern_tc.c Make the previous behaviour the default, add a sysctl which you 1998-11-29 20:31:02 +00:00
kern_threads.c Removed bogus casts to c_caddr_t. This is part of terminating 1999-01-29 08:29:05 +00:00
kern_time.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
kern_timeout.c Fixed stale references to hzto() in comments. 1998-05-17 20:08:05 +00:00
kern_xxx.c Change various syscalls to use size_t arguments instead of u_int. 1998-08-24 08:39:39 +00:00
ksched.c 1. Add new defs for mins and maxs for the POSIX flavor priorities. They 1998-05-19 21:11:53 +00:00
link_aout.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 00:57:57 +00:00
link_elf_obj.c Cast to `const char *' instead of to c_caddr_t. This is part of 1999-01-29 09:04:27 +00:00
link_elf.c Cast to `const char *' instead of to c_caddr_t. This is part of 1999-01-29 09:04:27 +00:00
Make.tags.inc Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not 1997-02-22 09:48:43 +00:00
makedevops.pl "Here is the most recent version of makedevops.pl. I've made the parsing 1998-11-08 18:33:11 +00:00
makedevops.sh Use the interface name as well as the method name when creating the method 1998-10-15 09:50:45 +00:00
Makefile Remove bogus architectures to allow make tags to work. 1996-03-31 18:53:43 +00:00
makesyscalls.sh Add trailing newline to sys/syscall.mk so that diff doesn't choke on it. 1998-06-28 10:01:52 +00:00
md5c.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
p1003_1b.c Set PAGE_SIZE for _SC_PAGESIZE sysconf(). 1998-06-01 21:54:43 +00:00
posix4_mib.c Finish _POSIX_PRIORITY_SCHEDULING. Needs P1003_1B and 1998-03-28 11:51:01 +00:00
subr_autoconf.c Split DIAGNOSTIC -> DIAGNOSTIC, INVARIANTS, and INVARIANT_SUPPORT as 1999-01-08 17:31:30 +00:00
subr_blist.c Add new blist module - radix tree based bitmap allocator with 1999-01-21 08:11:06 +00:00
subr_bus.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
subr_clist.c Cast pointers to uintptr_t/intptr_t instead of to u_long/long, 1998-07-15 02:32:35 +00:00
subr_devstat.c Fix some 64bit truncation problems which crept into SYSCTL_LONG() with the 1998-12-27 18:03:29 +00:00
subr_disklabel.c Fix -Wuninitialized warning regarding zero-length var-args ctl element. 1998-12-14 05:37:37 +00:00
subr_diskmbr.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 01:59:53 +00:00
subr_diskslice.c Rename one of the two devfs_link's to devfs_makelink. 1998-12-10 19:57:01 +00:00
subr_dkbad.c In all such uses of struct buf: 's/b_un.b_addr/b_data/g' 1997-12-02 21:07:20 +00:00
subr_log.c The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static 1998-12-07 21:58:50 +00:00
subr_module.c Align to sizeof(long) rather than sizeof(int32_t). It needs to be 1998-10-14 05:07:23 +00:00
subr_param.c Fixed problems with kernel config file overrides of sysv semaphore 1998-12-14 08:34:55 +00:00
subr_prf.c Add snprintf(3) and vsnprintf(3) capability to the kernel. 1998-12-03 04:45:57 +00:00
subr_prof.c Fixed bogotification of pseudocode for syscall args by rev.1.53 of 1998-09-05 14:30:11 +00:00
subr_rlist.c This module was used only by the old swapper and has been #if'd out, 1999-01-21 08:58:41 +00:00
subr_rman.c Ifdefed conditionally used simplock variables. 1999-01-02 11:34:57 +00:00
subr_scanf.c cleanup warnings by propogating const char pointers properly. 1999-01-29 08:09:32 +00:00
subr_smp.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 01:59:53 +00:00
subr_trap.c Add (but don't activate) code for a special VM option to make 1999-01-06 23:05:42 +00:00
subr_xxx.c * Fix a couple of places in the device pager where an address was 1998-11-08 12:39:07 +00:00
sys_generic.c Removed a bogus cast to c_caddr_t. This is part of terminating 1999-01-29 08:10:35 +00:00
sys_pipe.c Fix race in pipe read code whereby a blocked lock can allow another 1999-02-04 23:50:49 +00:00
sys_process.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
sys_socket.c Moved prototypes for soo_{read,write,close} into socketvar.h where they 1999-02-01 21:16:31 +00:00
syscalls.c regenerate (+kldsym) 1998-11-11 12:57:05 +00:00
syscalls.master A kldsym(2) syscall prototype for extracting information from the in-kernel 1998-11-11 12:45:14 +00:00
sysv_ipc.c Use suser() to determine super-user-ness, don't examine cr_uid directly. 1999-01-30 12:21:49 +00:00
sysv_msg.c Use suser() to determine super-user-ness, don't examine cr_uid directly. 1999-01-30 12:21:49 +00:00
sysv_sem.c Fixed problems with kernel config file overrides of sysv semaphore 1998-12-14 08:34:55 +00:00
sysv_shm.c This is a rather large commit that encompasses the new swapper, 1999-01-21 08:29:12 +00:00
tty_compat.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_conf.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_cons.c Remove a hard-coded table of kernel console I/O functions exported 1999-01-07 14:14:24 +00:00
tty_pty.c Use suser() to check for super user rather than examining cr_uid directly. 1999-01-30 12:17:38 +00:00
tty_snoop.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
tty_subr.c Cast pointers to uintptr_t/intptr_t instead of to u_long/long, 1998-07-15 02:32:35 +00:00
tty_tb.c Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not 1997-02-22 09:48:43 +00:00
tty_tty.c Added D_TTY to the cdevswitch flags for all tty drivers. This is required 1998-08-23 08:26:42 +00:00
tty.c Use suser() to check for super user rather than examining cr_uid directly. 1999-01-30 12:17:38 +00:00
uipc_domain.c Minor rearranging of code to allow simple protocol domains to be 1999-01-21 00:26:41 +00:00
uipc_mbuf.c Only call m_reclaim() if M_WAIT since calling it from an interrupt can 1998-07-27 03:59:48 +00:00
uipc_proto.c Yow! Completely change the way socket options are handled, eliminating 1998-08-23 03:07:17 +00:00
uipc_sockbuf.c Port NetBSD's 19990120-accept bug fix. This works around the race condition 1999-01-25 16:58:56 +00:00
uipc_socket2.c Port NetBSD's 19990120-accept bug fix. This works around the race condition 1999-01-25 16:58:56 +00:00
uipc_socket.c Fix the port of the NetBSD 19990120-accept fix. I misread a piece of 1999-02-02 07:23:28 +00:00
uipc_syscalls.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
uipc_usrreq.c The code that reclaims descriptors from in-transit unix domain 1999-01-21 09:02:18 +00:00
vfs_aio.c More const fixes for -Wall, -Wcast-qual 1999-01-29 23:18:50 +00:00
vfs_bio.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
vfs_cache.c Don't use CTL_VFS at the wrong level. This caused loops in the sysctl 1998-09-09 07:41:41 +00:00
vfs_cluster.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-27 21:50:00 +00:00
vfs_conf.c Remove the SLICE code. 1998-09-14 19:56:42 +00:00
vfs_default.c Add 'options DEBUG_LOCKS', which stores extra information in struct 1999-01-20 14:49:12 +00:00
vfs_export.c vp->v_object must be valid after normal flow of vfs_object_create() 1999-02-04 18:25:39 +00:00
vfs_extattr.c Use suser() to determine super-user-ness. 1999-01-30 12:27:00 +00:00
vfs_init.c Fix warnings related to -Wall -Wcast-qual 1999-01-28 17:32:05 +00:00
vfs_lookup.c Fix warnings in preparation for adding -Wall -Wcast-qual to the 1999-01-28 00:57:57 +00:00
vfs_mount.c Remove the SLICE code. 1998-09-14 19:56:42 +00:00
vfs_subr.c vp->v_object must be valid after normal flow of vfs_object_create() 1999-02-04 18:25:39 +00:00
vfs_syscalls.c Use suser() to determine super-user-ness. 1999-01-30 12:27:00 +00:00
vfs_vnops.c Use suser() to determine super-user-ness, don't examine cr_uid directly. 1999-01-30 12:21:49 +00:00
vnode_if.pl Make the vnode opv vector construction fully dynamic. Previously we 1998-11-10 09:04:09 +00:00
vnode_if.sh Make the vnode opv vector construction fully dynamic. Previously we 1998-11-10 09:04:09 +00:00
vnode_if.src Add a new vnode op, VOP_FREEBLKS(), which filesystems can use to inform 1998-09-05 14:13:12 +00:00