freebsd-skq/sys
Peter Wemm 52c24af701 Some cleanups and optimizations:
- Use the system headers method for Elf32/Elf64 symbol compatability
- get rid of the UPRINTF debugging.
- check the ELF header for compatability much more completely
- optimize the section mapper.  Use the same direct VM interfaces that
  imgact_aout.c and kern_exec.c use.
- Check the return codes from the vm_* functions better.  Some return
  KERN_* results, not an errno.
- prefault the page tables to reduce startup faults on page tables like
  a.out does.
- reset the segment protection to zero for each loop, otherwise each
  segment could get progressively more privs. (eg: if the first was
  read/write/execute, and the second was meant to be read/execute, the
  bug would make the second r/w/x too.  In practice this was not a
  problem because executables are normally laid out with text first.)
- Don't impose arbitary limits.  Use the limits on headers imposed by
  the need to fit them into one page.
- Remove unused switch() cases now that the verbose debugging is gone.

I've been using an earlier version of this for a month or so.
This sped up ELF exec speed a bit for me but I found it hard to get
consistant benchmarks when I tested it last (a few weeks ago).
I'm still bothered by the page read out of order caused by the
transition from data to bss. This which requires either part filling the
transition page or clearing the remainder.
1998-10-18 15:55:12 +00:00
..
alpha fixup for the alpha. tag slid forward, since it's benign for the x86. 1998-10-16 10:13:09 +00:00
amd64 Add an ELF_MACHINE_OK() macro for compatability with the Alpha version. 1998-10-18 15:31:23 +00:00
boot Set BINMODE to 444. 1998-10-17 14:20:25 +00:00
cam Add a mechanism to send a non-tagged transaction even if a device is 1998-10-15 23:17:35 +00:00
coda Fixes for lkm: 1998-09-29 20:19:45 +00:00
compat Fix a couple of out-of-bounds array references in mapping between 1998-10-11 04:54:16 +00:00
compile
conf Added missing dependency for bus_if.o on bus_if.h 1998-10-18 10:57:55 +00:00
contrib/softupdates Fix 'noatime' bug that was unrelated to use of noatime. 1998-10-03 19:17:11 +00:00
ddb Forgot to commit this; the alpha uses the kld symbol interface now. The 1998-10-15 02:01:50 +00:00
dev Add a missing ++. 1998-10-18 11:58:57 +00:00
fs Fixes for lkm: 1998-09-29 20:19:45 +00:00
geom Update system to new device statistics code. 1998-09-15 08:15:30 +00:00
gnu Initialize earlier (ie: before npx) in case it makes any difference. 1998-10-18 07:44:33 +00:00
i386 Add an ELF_MACHINE_OK() macro for compatability with the Alpha version. 1998-10-18 15:31:23 +00:00
isa Fix breakage introduced by last patch. bde has added CC_QUIET flag to 1998-10-12 18:53:33 +00:00
isofs/cd9660 Remove the SLICE code. 1998-09-14 19:56:42 +00:00
kern Some cleanups and optimizations: 1998-10-18 15:55:12 +00:00
libkern Converted rcsid to $Id$ again. There shouldn't be any rcsids in the kernel. 1998-08-17 19:26:37 +00:00
miscfs Make devfs update the atime timestamp so that 'w' works when using 1998-09-30 20:33:46 +00:00
modules Missed this file. 1998-10-16 04:31:35 +00:00
msdosfs Remove unused variable. 1998-09-13 15:40:31 +00:00
net Check the timeval passed to BIOCSRTIMEOUT with itimerfix. Use tvtohz() 1998-10-08 00:32:08 +00:00
netatalk Fixed printf format errors. 1998-08-17 01:05:25 +00:00
netatm Two patches from the HARP people: 1998-09-17 09:35:02 +00:00
netinet *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
netipx Yow! Completely change the way socket options are handled, eliminating 1998-08-23 03:07:17 +00:00
netkey Fixed printf format errors. 1998-08-17 01:05:25 +00:00
netnatm This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
netns Make INET a proper option. 1998-01-08 23:42:31 +00:00
nfs In nfs_link(), check for a cross-device mount *before* looking 1998-09-29 23:39:37 +00:00
nfsclient In nfs_link(), check for a cross-device mount *before* looking 1998-09-29 23:39:37 +00:00
nfsserver The code checks each fragment mark to see if it's valid; if the fragment 1998-09-29 22:33:05 +00:00
pc98 Update SMP-GENERIC98 to something a bit more recent based on GENERIC98. 1998-10-18 14:02:43 +00:00
pccard - Fix a bug where a "power_off_slot' timeout was not cancelled when the 1998-09-24 17:56:31 +00:00
pci Honor CAM_TAG_ACTION_NONE. 1998-10-15 23:17:58 +00:00
posix4 Set PAGE_SIZE for _SC_PAGESIZE sysconf(). 1998-06-01 21:54:43 +00:00
powerpc *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
rpc Resolve conflicts. 1997-05-28 04:45:15 +00:00
sys post-tag version bump. We're now back at 3.0-current! 1998-10-16 06:55:07 +00:00
tools VOP_STRATEGY grows an (struct vnode *) argument 1998-07-04 20:45:42 +00:00
ufs Use only the correct raw partition for writing labels. Don't use the 1998-10-17 07:49:04 +00:00
vm Fixed two potentially serious classes of bugs: 1998-10-13 08:24:45 +00:00
Makefile In src/Makefile.inc1: 1998-10-11 18:39:38 +00:00