freebsd-dev/sys
Konstantin Belousov 9815066425 Make swapoff reliable.
The swap_pager_swapoff() function uses trylock for the object lock
before pagein, which means that either i/o to md(4) over swap, or
intensive page faults over swap pager objects might prevent swapoff()
from making any progress. Then the retry < 100 check fails and machine
panics.

If trylock fails, acquire the object lock in the blockable way and
restart the hash bucket walk.  Keep retries logic for now.

Reported and tested by:	pho
Reviewed by:	alc, markj
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D7688
2016-08-31 14:49:58 +00:00
..
amd64 Shorten banal comments about zeroing and copying pages. Don't give 2016-08-29 14:38:31 +00:00
arm Add support for Allwinner A64 USB PHY. 2016-08-31 10:45:53 +00:00
arm64 Also handle instruction traps. We might hit these when the page we are 2016-08-31 13:58:32 +00:00
boot Netboot: allow both tftpfs and nfs in both pxeboot and loader.efi 2016-08-31 13:16:40 +00:00
bsm
cam Decode some new ATA commands found in ACS-3. 2016-08-27 19:51:37 +00:00
cddl Fix kernel panic when inheriting properties without default. 2016-08-31 11:55:31 +00:00
compat Add missing header dependency. 2016-08-24 09:57:19 +00:00
conf Add cnv API. 2016-08-27 13:37:30 +00:00
contrib Update VCHIQ driver to upstream version 4eda74f2 2016-08-31 01:04:57 +00:00
crypto
ddb Expand error messages: print symbol names, parentheses and shift tokens, 2016-08-28 19:33:09 +00:00
dev Add some locking to sc_cngetc(). 2016-08-31 11:10:39 +00:00
fs Implement VOP_FDATASYNC() for msdosfs. 2016-08-15 19:17:00 +00:00
gdb
geom
gnu
i386 Shorten banal comments about zeroing and copying pages. Don't give 2016-08-29 14:38:31 +00:00
isa
kern Back out misfired extra file in r305108. 2016-08-31 04:03:55 +00:00
kgssapi
libkern
mips [mips] move AR91XX_BASE to std.AR91XX. 2016-08-28 04:10:23 +00:00
modules Use both the MACHINE and MACHINE_CPUARCH directories for finding sources. 2016-08-29 07:48:35 +00:00
net net/rndis: Packet types are defined by NDIS; not RNDIS specific. 2016-08-30 03:11:07 +00:00
net80211 [net80211] correctly lock the ifp before accessing the lladdr. 2016-08-18 01:25:12 +00:00
netgraph Avoid panic from ng_uncallout when unpluggin ethernet cable with active 2016-08-08 19:31:01 +00:00
netinet Adjust TCP module fastpath after r304803's cc_ack_received() changes. 2016-08-26 19:23:17 +00:00
netinet6 Fix L2 caching for UDP over IPv6 2016-08-24 00:52:30 +00:00
netipsec Remove redundant sanity checks from ipsec[46]_common_input_cb(). 2016-08-31 11:51:52 +00:00
netnatm
netpfil Try to fix gcc compilation errors (which are right). 2016-08-18 10:26:15 +00:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed Do not free an uninitialized pointer on soaccept failure in the iWARP 2016-08-26 08:25:28 +00:00
opencrypto
pc98 Remove the ie(4) driver for Intel 82586 ISA Ethernet adapters. 2016-08-20 00:49:29 +00:00
powerpc Attach and LAW problems to fix 2016-08-30 02:09:40 +00:00
riscv o Remove operation in machine mode. 2016-08-10 12:41:36 +00:00
rpc
security Audit the accepted (or rejected) username argument to setlogin(2). 2016-08-20 20:28:08 +00:00
sparc64 Remove the wds(4) driver for the WD700 ISA SCSI HBA. 2016-08-19 21:51:42 +00:00
sys fd: effectively revert r305091 2016-08-31 12:29:04 +00:00
teken
tests
tools Consider CROSS_BINUTILS_PREFIX environment variable so we use correct 2016-08-10 13:49:17 +00:00
ufs Bug 211013 reports that a write error to a UFS filesystem running 2016-08-16 21:02:30 +00:00
vm Make swapoff reliable. 2016-08-31 14:49:58 +00:00
x86 Fix build for !SMP kernels after the Xen MSIX workaround. 2016-08-22 21:23:17 +00:00
xdr
xen
Makefile