1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-30 12:04:07 +00:00
freebsd/sys
Peter Wemm 3f25cbddc2 Move the initialization and teardown of pmaps to the vmspace zone's
init and fini handlers.  Our vm system removes all userland mappings at
exit prior to calling pmap_release.  It just so happens that we might
as well reuse the pmap for the next process since the userland slate
has already been wiped clean.

However.  There is a functional benefit to this as well.  For platforms
that share userland and kernel context in the same pmap, it means that
the kernel portion of a pmap remains valid after the vmspace has been
freed (process exit) and while it is in uma's cache.  This is significant
for i386 SMP systems with kernel context borrowing because it avoids
a LOT of IPIs from the pmap_lazyfix() cleanup in the usual case.

Tested on:  amd64, i386, sparc64, alpha
Glanced at by:  alc
2004-07-21 00:29:21 +00:00
..
alpha The previous revision introduced a compilation error, i.e., the use of an 2004-07-20 06:32:32 +00:00
amd64 Remove the allpmaps list. It's unused. 2004-07-20 02:40:56 +00:00
arm Implement ptrace_set_pc(). 2004-07-20 23:00:02 +00:00
boot o Support the REL32LSB relocation. It's in the ELF file from which 2004-07-20 07:11:14 +00:00
cam Quirk for SEGRAND NP-900 USB MP3Player 2004-07-18 05:39:14 +00:00
coda Do a pass over all modules in the kernel and make them return EOPNOTSUPP 2004-07-15 08:26:07 +00:00
compat *sigh* Fix source code compatibility with 5.2.1-RELEASE _again_. 2004-07-20 20:28:57 +00:00
conf Add ng_device(4) to LINT. 2004-07-20 12:42:54 +00:00
contrib Fix a stupid attemp to apply host arithmetics to network byte ordered data. 2004-07-18 14:25:48 +00:00
crypto Use __FBSDID(). 2004-06-14 00:38:54 +00:00
ddb Re-add the gdb command. It was removed to be replaced by something 2004-07-12 01:38:07 +00:00
dev Slight cosmetic changes. 2004-07-20 17:15:38 +00:00
doc Experimental support for using doxygen to generate kernel documentation. 2004-07-11 16:13:57 +00:00
fs Do a pass over all modules in the kernel and make them return EOPNOTSUPP 2004-07-15 08:26:07 +00:00
gdb Introduce the GDB debugger backend for the new KDB framework. The 2004-07-10 17:47:22 +00:00
geom MFp4: Add two options for gnop(8)'s 'create' command: 2004-07-19 07:52:56 +00:00
gnu Make VFS_ROOT() and vflush() take a thread argument. 2004-07-12 08:14:09 +00:00
i4b Fix a possible hang which apparently occurs during a warm boot (cold boot 2004-07-18 20:13:31 +00:00
i386 Make end of frames for KSE thread, for system scope thread, without this 2004-07-20 01:38:59 +00:00
ia64 Make FLT_ROUNDS correctly reflect the dynamic rounding mode. 2004-07-19 08:17:25 +00:00
isa Ignore more strange return values of the test_aux_port() function, 2004-07-16 22:04:29 +00:00
isofs/cd9660 Make VFS_ROOT() and vflush() take a thread argument. 2004-07-12 08:14:09 +00:00
kern Fix a minor error in pipe_stat - st_size was always reported as 0 2004-07-20 07:06:43 +00:00
libkern Copy qsort_r(3) from libc to libkern. 2004-07-15 23:58:23 +00:00
modules Fix the alpha (and others) module build by only building fdc_acpi.c on 2004-07-16 18:37:00 +00:00
net When removing the last reference to a cloner, do not try to unlock twice - 2004-07-20 21:44:28 +00:00
net80211 Link ALTQ to the build and break with ABI for struct ifnet. Please recompile 2004-06-13 17:29:10 +00:00
netatalk Further function forward declaration white space tweaks. 2004-07-19 17:18:58 +00:00
netatm Fix a typo that could provoke a panic or access to random memory. 2004-07-19 12:54:00 +00:00
netgraph Slight cosmetic changes. 2004-07-20 17:15:38 +00:00
netinet M_PREPEND() the IP header on to the front of an outgoing raw IP packet 2004-07-20 20:52:30 +00:00
netinet6 Do a pass over all modules in the kernel and make them return EOPNOTSUPP 2004-07-15 08:26:07 +00:00
netipsec Add required includes for post-sorwakeup() change to fix FAST_IPSEC 2004-06-23 01:58:22 +00:00
netipx Constify 'spx_backoff'. 2004-07-12 19:35:29 +00:00
netkey Merge next step in socket buffer locking: 2004-06-21 00:20:43 +00:00
netnatm Constify send and receive space constants in natm. 2004-06-24 03:11:29 +00:00
netncp Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
netsmb Merge additional socket buffer locking from rwatson_netperf: 2004-06-17 22:48:11 +00:00
nfs
nfs4client Make VFS_ROOT() and vflush() take a thread argument. 2004-07-12 08:14:09 +00:00
nfsclient Turn off SO_REUSEADDR and SO_REUSEPORT, they were causing EADDRINUSE 2004-07-13 05:42:59 +00:00
nfsserver Do a pass over all modules in the kernel and make them return EOPNOTSUPP 2004-07-15 08:26:07 +00:00
opencrypto Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
pc98 MFi386: revision 1.596. 2004-07-19 11:17:57 +00:00
pccard Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
pci Update for the KDB framework: 2004-07-10 21:47:53 +00:00
posix4
powerpc elf_cpu_load_file no longer has an __unused variable. Also, don't 2004-07-20 02:40:57 +00:00
rpc fix array index out of bounds in rpc->rc_srtt[], rpc->rc_sdrtt[] 2004-07-15 22:21:25 +00:00
security Rename Biba and MLS _single label elements to _effective, which more 2004-07-16 02:03:50 +00:00
sparc64 In -CURRENT pseudo devices are not statically assigned at compile time, 2004-07-18 09:03:12 +00:00
sys Reimplement contigmalloc(9) with an algorithm which stands a greatly- 2004-07-19 06:21:27 +00:00
tools Pass doxygen doc comments through to the output. 2004-07-11 16:14:24 +00:00
ufs Make sure to update the mnt_stats before UFS1 extattr tried to 2004-07-14 14:19:32 +00:00
vm Move the initialization and teardown of pmaps to the vmspace zone's 2004-07-21 00:29:21 +00:00
Makefile Try harder not to compile anything in sys/boot for arm. 2004-05-16 00:19:12 +00:00