freebsd-skq/sys
markj 2172a46042 Avoid dequeuing the fault page during a soft fault.
Such pages are re-enqueued at the end of the fault handler, preserving
LRU. Rather than performing two separate operations per fault, simply
requeue the page at the end of the fault (or bump its activation count
if it resides in PQ_ACTIVE, avoiding the page queue lock entirely).
This elides some page lock and page queue lock operations in common
cases, e.g., CoW faults.

Note that we must still dequeue the source page for "optimized" CoW
faults since the page may not remain enqueued while it is moved to
another object.

Reviewed by:	alc, kib
Tested by:	pho
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D14625
2018-03-18 16:49:30 +00:00
..
amd64 Share a single bsd-linux errno table across MD consumers 2018-03-16 14:46:38 +00:00
arm Add the header file needed for the recently-added call to pagedaemon_wakeup(). 2018-03-16 16:06:25 +00:00
arm64 EFIRT: SetVirtualAddressMap with 1:1 mapping after exiting boot services 2018-03-13 17:10:52 +00:00
bsm
cam Only take out the periph lock when we're modifying the flags of the 2018-03-17 16:04:06 +00:00
cddl MFV r330973: 9164 assert: newds == os->os_dsl_dataset 2018-03-15 08:49:21 +00:00
compat linux_errno.c: add newer errno values 2018-03-16 14:51:47 +00:00
conf Add EFI to kernel options. 2018-03-17 17:18:29 +00:00
contrib lib(private)zstd: Fix riscv build 2018-03-18 03:42:57 +00:00
crypto Garbage collect unused chacha20 code 2018-03-16 07:11:53 +00:00
ddb db_script_exec: use a saved script name when reporting commands executed 2018-03-04 13:27:21 +00:00
dev Eliminate some unneeded intermediate variables. Eliminate some redundant 2018-03-18 16:36:14 +00:00
dts [rpi] remove IRQ support for BCM233x RNG 2018-03-10 02:49:58 +00:00
fs Revert r313780 (UFS_ prefix) 2018-03-17 12:59:55 +00:00
gdb amd64: Protect the kernel text, data, and BSS by setting the RW/NX bits 2018-03-06 14:28:37 +00:00
geom Remove unneeded variable which was introduced in r328472. 2018-03-18 15:09:55 +00:00
gnu bwn(4): txpid2g/txpid5g[lh] are not defined after sromrev 7; the default 2018-02-13 17:43:54 +00:00
i386 Share a single bsd-linux errno table across MD consumers 2018-03-16 14:46:38 +00:00
isa Revert r330780, it was improperly tested and results in taking a spin 2018-03-11 20:13:15 +00:00
kern Have vm_page_{deactivate,launder}() requeue already-queued pages. 2018-03-18 16:40:56 +00:00
kgssapi kgssapi: Remove trivial deadcode 2018-02-14 00:12:03 +00:00
libkern iconv uses strlen directly on user supplied memory 2018-02-26 18:23:36 +00:00
mips MIPS: Implement fue*word* and casueword* in assembly. 2018-03-12 22:10:06 +00:00
modules Use kern.opts.mk instead of bsd.own.mk (which includes src.opts.mk) 2018-03-17 17:18:46 +00:00
net Fix outgoing TCP/UDP packet drop on arp/ndp entry expiration. 2018-03-17 17:05:48 +00:00
net80211 net80211: wrap protection frame allocation into ieee80211_alloc_prot() 2018-03-09 11:33:56 +00:00
netgraph Correct pseudo misspelling in sys/ comments 2018-02-23 18:15:50 +00:00
netinet Fix outgoing TCP/UDP packet drop on arp/ndp entry expiration. 2018-03-17 17:05:48 +00:00
netinet6 Fix outgoing TCP/UDP packet drop on arp/ndp entry expiration. 2018-03-17 17:05:48 +00:00
netipsec Rework key_sendup_mbuf() a bit: 2018-03-11 19:14:01 +00:00
netpfil Do not try to reassemble IPv6 fragments in "reass" rule. 2018-03-12 09:40:46 +00:00
netsmb Unsign some values related to allocation. 2018-01-22 02:08:10 +00:00
nfs Modernize nfssvc(2) registartion. 2018-02-08 20:09:42 +00:00
nfsclient style: Remove remaining deprecated MALLOC/FREE macros 2018-01-25 22:25:13 +00:00
nfsserver
nlm Use syscall_helper_register() to register syscalls and initialize though 2018-02-10 01:09:22 +00:00
ofed Make sure VNET is set when calling sa6_recoverscope() in ibcore. 2018-03-07 13:32:52 +00:00
opencrypto Move per-operation data out of the csession structure. 2018-01-26 23:21:50 +00:00
powerpc Reverting r330925 for now 2018-03-15 06:19:45 +00:00
riscv Unify bulk free operations in several pmaps. 2018-03-04 20:53:20 +00:00
rpc
security audit(4): fix a typo in a comment 2018-03-17 17:56:08 +00:00
sparc64 amd64: Protect the kernel text, data, and BSS by setting the RW/NX bits 2018-03-06 14:28:37 +00:00
sys Add _IOC_NEWLEN() and _IOC_NEWTYPE() macros. 2018-03-16 22:23:04 +00:00
teken
tests
tools Avoid using \$. It's an unknown escape sequence. Some awks warn about 2018-01-28 05:13:08 +00:00
ufs Revert r313780 (UFS_ prefix) 2018-03-17 12:59:55 +00:00
vm Avoid dequeuing the fault page during a soft fault. 2018-03-18 16:49:30 +00:00
x86 ANSIfy sys/x86 2018-03-17 01:40:09 +00:00
xdr
xen
Makefile