Revision ca71ba4d0cfcf5f7a8e9b24339547b5a72299f80 authored by John Baldwin on 26 January 2010, 20:58:09 UTC, committed by John Baldwin on 26 January 2010, 20:58:09 UTC
Optimize the cache flushing done when changing caching attributes of pages
by doing nothing for CPUs that support self-snooping and using CLFLUSH
instead of a full cache invalidate when possible.
- On i386 take care of possible mappings of the page by sf buffer by
  utilizing the mapping for clflush, otherwise map the page transiently.
  Amd64 uses the direct map.
- Do not use CLFLUSH on Intel CPUs due to problems with flushing the local
  APIC range by default.  This can be further controlled via the
  hw.clflush_disable loader tunable.  A setting of 1 disables the
  use of CLFLUSH.  A setting of 0 allows CLFLUSH to be used for Intel
  CPUs when CPUID_SS is not present.

Approved by:	re (kib)
1 parent a6a19cb
History
File Mode Size
openbsd-compat
CREDITS -rw-r--r-- 5.4 KB
ChangeLog -rw-r--r-- 208.0 KB
FREEBSD-tricks -rw-r--r-- 461 bytes
FREEBSD-upgrade -rw-r--r-- 4.1 KB
FREEBSD-vendor -rw-r--r-- 176 bytes
INSTALL -rw-r--r-- 9.2 KB
LICENCE -rw-r--r-- 15.6 KB
OVERVIEW -rw-r--r-- 6.6 KB
PROTOCOL -rw-r--r-- 8.8 KB
PROTOCOL.agent -rw-r--r-- 16.4 KB
README -rw-r--r-- 2.7 KB
README.dns -rw-r--r-- 1.6 KB
README.platform -rw-r--r-- 3.5 KB
README.privsep -rw-r--r-- 2.6 KB
README.smartcard -rw-r--r-- 2.0 KB
README.tun -rw-r--r-- 4.8 KB
TODO -rw-r--r-- 2.7 KB
WARNING.RNG -rw-r--r-- 4.1 KB
aclocal.m4 -rw-r--r-- 2.5 KB
acss.c -rw-r--r-- 8.8 KB
acss.h -rw-r--r-- 1.6 KB
addrmatch.c -rw-r--r-- 9.0 KB
atomicio.c -rw-r--r-- 3.7 KB
atomicio.h -rw-r--r-- 1.9 KB
audit-bsm.c -rw-r--r-- 10.0 KB
audit.c -rw-r--r-- 5.7 KB
audit.h -rw-r--r-- 2.3 KB
auth-bsdauth.c -rw-r--r-- 3.5 KB
auth-chall.c -rw-r--r-- 3.5 KB
auth-krb5.c -rw-r--r-- 6.2 KB
auth-options.c -rw-r--r-- 9.1 KB
auth-options.h -rw-r--r-- 1.1 KB
auth-pam.c -rw-r--r-- 30.9 KB
auth-pam.h -rw-r--r-- 2.0 KB
auth-passwd.c -rw-r--r-- 6.2 KB
auth-rh-rsa.c -rw-r--r-- 2.9 KB
auth-rhosts.c -rw-r--r-- 9.1 KB
auth-rsa.c -rw-r--r-- 8.4 KB
auth-shadow.c -rw-r--r-- 4.2 KB
auth-sia.c -rw-r--r-- 4.3 KB
auth-sia.h -rw-r--r-- 1.4 KB
auth-skey.c -rw-r--r-- 2.8 KB
auth.c -rw-r--r-- 15.6 KB
auth.h -rw-r--r-- 6.0 KB
auth1.c -rw-r--r-- 10.4 KB
auth2-chall.c -rw-r--r-- 9.0 KB
auth2-gss.c -rw-r--r-- 8.1 KB
auth2-hostbased.c -rw-r--r-- 5.6 KB
auth2-kbdint.c -rw-r--r-- 2.2 KB
auth2-none.c -rw-r--r-- 2.2 KB
auth2-passwd.c -rw-r--r-- 2.4 KB
auth2-pubkey.c -rw-r--r-- 7.4 KB
auth2.c -rw-r--r-- 10.9 KB
authfd.c -rw-r--r-- 16.6 KB
authfd.h -rw-r--r-- 3.2 KB
authfile.c -rw-r--r-- 18.1 KB
authfile.h -rw-r--r-- 1021 bytes
bufaux.c -rw-r--r-- 6.1 KB
bufbn.c -rw-r--r-- 5.9 KB
buffer.c -rw-r--r-- 5.6 KB
buffer.h -rw-r--r-- 2.7 KB
canohost.c -rw-r--r-- 10.6 KB
canohost.h -rw-r--r-- 932 bytes
channels.c -rw-r--r-- 87.5 KB
channels.h -rw-r--r-- 10.2 KB
cipher-3des1.c -rw-r--r-- 5.1 KB
cipher-acss.c -rw-r--r-- 2.1 KB
cipher-aes.c -rw-r--r-- 4.6 KB
cipher-bf1.c -rw-r--r-- 2.9 KB
cipher-ctr.c -rw-r--r-- 3.5 KB
cipher.c -rw-r--r-- 10.9 KB
cipher.h -rw-r--r-- 3.7 KB
cleanup.c -rw-r--r-- 1.0 KB
clientloop.c -rw-r--r-- 53.5 KB
clientloop.h -rw-r--r-- 3.2 KB
compat.c -rw-r--r-- 6.6 KB
compat.h -rw-r--r-- 2.6 KB
compress.c -rw-r--r-- 5.0 KB
compress.h -rw-r--r-- 885 bytes
config.guess -rwxr-xr-x 43.3 KB
config.h -rw-r--r-- 38.7 KB
config.h.in -rw-r--r-- 36.5 KB
crc32.c -rw-r--r-- 4.9 KB
crc32.h -rw-r--r-- 1.4 KB
deattack.c -rw-r--r-- 3.9 KB
deattack.h -rw-r--r-- 917 bytes
defines.h -rw-r--r-- 18.2 KB
dh.c -rw-r--r-- 9.0 KB
dh.h -rw-r--r-- 2.4 KB
dispatch.c -rw-r--r-- 2.9 KB
dispatch.h -rw-r--r-- 1.8 KB
dns.c -rw-r--r-- 7.8 KB
dns.h -rw-r--r-- 1.9 KB
entropy.c -rw-r--r-- 5.2 KB
entropy.h -rw-r--r-- 1.5 KB
fatal.c -rw-r--r-- 1.6 KB
fixpaths -rwxr-xr-x 499 bytes
fixprogs -rwxr-xr-x 1.6 KB
groupaccess.c -rw-r--r-- 3.4 KB
groupaccess.h -rw-r--r-- 1.5 KB
gss-genr.c -rw-r--r-- 7.3 KB
gss-serv-krb5.c -rw-r--r-- 5.1 KB
gss-serv.c -rw-r--r-- 9.4 KB
hostfile.c -rw-r--r-- 9.4 KB
hostfile.h -rw-r--r-- 1.1 KB
includes.h -rw-r--r-- 3.8 KB
kex.c -rw-r--r-- 14.1 KB
kex.h -rw-r--r-- 4.0 KB
kexdh.c -rw-r--r-- 2.8 KB
kexdhc.c -rw-r--r-- 4.8 KB
kexdhs.c -rw-r--r-- 4.6 KB
kexgex.c -rw-r--r-- 3.1 KB
kexgexc.c -rw-r--r-- 5.9 KB
kexgexs.c -rw-r--r-- 5.7 KB
key.c -rw-r--r-- 22.8 KB
key.h -rw-r--r-- 2.9 KB
log.c -rw-r--r-- 9.2 KB
log.h -rw-r--r-- 2.2 KB
loginrec.c -rw-r--r-- 40.6 KB
loginrec.h -rw-r--r-- 4.6 KB
logintest.c -rw-r--r-- 8.6 KB
mac.c -rw-r--r-- 4.9 KB
mac.h -rw-r--r-- 1.5 KB
match.c -rw-r--r-- 7.2 KB
match.h -rw-r--r-- 1.0 KB
md-sha256.c -rw-r--r-- 2.2 KB
md5crypt.c -rw-r--r-- 4.0 KB
md5crypt.h -rw-r--r-- 803 bytes
misc.c -rw-r--r-- 17.4 KB
misc.h -rw-r--r-- 2.9 KB
mkinstalldirs -rwxr-xr-x 691 bytes
moduli -rw-r--r-- 122.9 KB
moduli.5 -rw-r--r-- 3.5 KB
moduli.c -rw-r--r-- 16.4 KB
monitor.c -rw-r--r-- 47.0 KB
monitor.h -rw-r--r-- 3.6 KB
monitor_fdpass.c -rw-r--r-- 4.2 KB
monitor_fdpass.h -rw-r--r-- 1.5 KB
monitor_mm.c -rw-r--r-- 8.5 KB
monitor_mm.h -rw-r--r-- 2.2 KB
monitor_wrap.c -rw-r--r-- 29.2 KB
monitor_wrap.h -rw-r--r-- 4.0 KB
msg.c -rw-r--r-- 2.6 KB
msg.h -rw-r--r-- 1.5 KB
mux.c -rw-r--r-- 18.7 KB
myproposal.h -rw-r--r-- 2.5 KB
nchan.c -rw-r--r-- 12.6 KB
packet.c -rw-r--r-- 41.3 KB
packet.h -rw-r--r-- 3.7 KB
pathnames.h -rw-r--r-- 5.4 KB
platform.c -rw-r--r-- 1.3 KB
platform.h -rw-r--r-- 995 bytes
progressmeter.c -rw-r--r-- 7.3 KB
progressmeter.h -rw-r--r-- 1.4 KB
readconf.c -rw-r--r-- 37.5 KB
readconf.h -rw-r--r-- 5.4 KB
readpass.c -rw-r--r-- 4.9 KB
rijndael.c -rw-r--r-- 57.3 KB
rijndael.h -rw-r--r-- 1.8 KB
rsa.c -rw-r--r-- 4.6 KB
rsa.h -rw-r--r-- 866 bytes
scard-opensc.c -rw-r--r-- 12.2 KB
scard.c -rw-r--r-- 12.8 KB
scard.h -rw-r--r-- 1.6 KB
scp.1 -rw-r--r-- 4.6 KB
scp.c -rw-r--r-- 29.0 KB
servconf.c -rw-r--r-- 48.4 KB
servconf.h -rw-r--r-- 6.5 KB
serverloop.c -rw-r--r-- 34.2 KB
serverloop.h -rw-r--r-- 1016 bytes
session.c -rw-r--r-- 66.2 KB
session.h -rw-r--r-- 2.5 KB
sftp-client.c -rw-r--r-- 30.3 KB
sftp-client.h -rw-r--r-- 3.4 KB
sftp-common.c -rw-r--r-- 5.9 KB
sftp-common.h -rw-r--r-- 2.0 KB
sftp-glob.c -rw-r--r-- 3.4 KB
sftp-server-main.c -rw-r--r-- 1.4 KB
sftp-server.8 -rw-r--r-- 3.0 KB
sftp-server.c -rw-r--r-- 31.1 KB
sftp.1 -rw-r--r-- 10.7 KB
sftp.c -rw-r--r-- 41.4 KB
sftp.h -rw-r--r-- 3.3 KB
ssh-add.1 -rw-r--r-- 5.7 KB
ssh-add.c -rw-r--r-- 10.7 KB
ssh-agent.1 -rw-r--r-- 6.8 KB
ssh-agent.c -rw-r--r-- 30.8 KB
ssh-dss.c -rw-r--r-- 5.1 KB
ssh-gss.h -rw-r--r-- 4.4 KB
ssh-keygen.1 -rw-r--r-- 14.1 KB
ssh-keygen.c -rw-r--r-- 36.6 KB
ssh-keyscan.1 -rw-r--r-- 4.0 KB
ssh-keyscan.c -rw-r--r-- 17.7 KB
ssh-keysign.8 -rw-r--r-- 2.6 KB
ssh-keysign.c -rw-r--r-- 6.1 KB
ssh-rand-helper.8 -rw-r--r-- 3.0 KB
ssh-rand-helper.c -rw-r--r-- 22.4 KB
ssh-rsa.c -rw-r--r-- 6.9 KB
ssh.1 -rw-r--r-- 40.2 KB
ssh.c -rw-r--r-- 35.7 KB
ssh.h -rw-r--r-- 2.8 KB
ssh1.h -rw-r--r-- 4.1 KB
ssh2.h -rw-r--r-- 5.4 KB
ssh_config -rw-r--r-- 1.5 KB
ssh_config.5 -rw-r--r-- 31.7 KB
ssh_namespace.h -rw-r--r-- 18.8 KB
sshconnect.c -rw-r--r-- 32.6 KB
sshconnect.h -rw-r--r-- 2.4 KB
sshconnect1.c -rw-r--r-- 21.5 KB
sshconnect2.c -rw-r--r-- 38.6 KB
sshd.8 -rw-r--r-- 27.9 KB
sshd.c -rw-r--r-- 59.2 KB
sshd_config -rw-r--r-- 3.3 KB
sshd_config.5 -rw-r--r-- 29.7 KB
sshlogin.c -rw-r--r-- 4.8 KB
sshlogin.h -rw-r--r-- 934 bytes
sshpty.c -rw-r--r-- 6.0 KB
sshpty.h -rw-r--r-- 1011 bytes
sshtty.c -rw-r--r-- 2.9 KB
ttymodes.c -rw-r--r-- 10.7 KB
ttymodes.h -rw-r--r-- 5.2 KB
uidswap.c -rw-r--r-- 8.6 KB
uidswap.h -rw-r--r-- 716 bytes
umac.c -rw-r--r-- 45.4 KB
umac.h -rw-r--r-- 4.3 KB
uuencode.c -rw-r--r-- 2.5 KB
uuencode.h -rw-r--r-- 1.5 KB
version.c -rw-r--r-- 2.0 KB
version.h -rw-r--r-- 413 bytes
xmalloc.c -rw-r--r-- 2.3 KB
xmalloc.h -rw-r--r-- 1.0 KB

README

back to top