1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-04 12:52:15 +00:00
freebsd/sys
Konstantin Belousov 95c4bf756a Provide mutual exclusion between zone allocation/destruction and
uma_reclaim().  Reclamation code must not see half-constructed or
destructed zones.  Do this by bracing uma_zcreate() and uma_zdestroy()
into a shared-locked sx, and take the sx exclusively in uma_reclaim().

Usually zones are not created/destroyed during the system operation,
but tmpfs mounts do cause zone operations and exposed the bug.

Another solution could be to only expose a new keg on uma_kegs list
after the corresponding zone is fully constructed, and similar
treatment for the destruction.  But it probably requires more risky
code rearrangement as well.

Reported and tested by:	pho
Discussed with:	avg
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2014-11-30 20:20:55 +00:00
..
amd64 Revert r274772: it is not valid on MIPS 2014-11-25 03:50:31 +00:00
arm Correctly a few incorrect uses of ENTRY/EENTRY and END/EEND 2014-11-30 12:25:04 +00:00
boot Unbreak the code for non-digits below '0' by casting the expression 2014-11-30 08:43:55 +00:00
bsm
cam Coalesce last data move and command status for read commands. 2014-11-25 17:53:35 +00:00
cddl Revert r273060 per discussion with avg@ as we need to make L2ARC 2014-11-26 02:20:25 +00:00
compat The process spin lock currently has the following distinct uses: 2014-11-26 14:10:00 +00:00
conf Ignore more warnings with external gcc 2014-11-29 14:30:39 +00:00
contrib Correctly define constants. 2014-11-28 04:07:06 +00:00
crypto Fix gcc build: preserve const qualifier when casting input values. 2014-11-11 13:37:28 +00:00
ddb ddb: ANSI-fy function declarations. 2014-10-12 18:01:52 +00:00
dev Cleanup and performance improvement of the virtio_blk driver 2014-11-30 16:36:26 +00:00
fs The process spin lock currently has the following distinct uses: 2014-11-26 14:10:00 +00:00
gdb
geom Actually, that was a bad idea. Go back to MAXPARTITIONS. 2014-11-20 17:31:25 +00:00
gnu
i386 MFamd64: Check for invalid flags in the machine context in sigreturn() 2014-11-25 12:52:00 +00:00
isa
kern Remove trailing whitespace. 2014-11-30 19:32:00 +00:00
kgssapi Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
libkern Sync with userland variant. 2014-11-17 21:01:35 +00:00
mips Add support for Buffalo WZR-HP-AG300H atheros MIPS router. 2014-11-25 17:33:22 +00:00
modules There never was a PC Card joystick attachment that worked. Kill the 2014-11-22 20:31:20 +00:00
net After r275196 unbreak NOIP and NOINET kernels by hiding an otherwise 2014-11-28 14:51:49 +00:00
net80211 Fix multiple incorrect SYSCTL arguments in the kernel: 2014-10-21 07:31:21 +00:00
netgraph In preparation of merging projects/sendfile, transform bare access to 2014-11-12 09:57:15 +00:00
netinet Merge from projects/sendfile: 2014-11-30 13:43:52 +00:00
netinet6 Do not return unlocked/unreferenced lle in arpresolve/nd6_storelladdr - 2014-11-27 23:06:25 +00:00
netipsec Remove ip4_input() declaration. It was removed in r275133. 2014-11-27 00:27:39 +00:00
netnatm
netpfil pf(4) needs to have a correct checksum during its processing. 2014-11-19 13:31:08 +00:00
netsmb
nfs Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
nfsclient Follow up to r225617. In order to maximize the re-usability of kernel code 2014-10-16 18:04:43 +00:00
nfsserver
nlm Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
ofed Merge from projects/sendfile: extend protocols API to support 2014-11-30 13:24:21 +00:00
opencrypto
pc98 Renove faith(4) and faithd(8) from base. It looks like industry 2014-11-09 21:33:01 +00:00
powerpc Add support for dtrace:fbt on modules for PowerPC 2014-11-29 20:54:33 +00:00
rpc In preparation of merging projects/sendfile, transform bare access to 2014-11-12 09:57:15 +00:00
security
sparc64 Revert r274772: it is not valid on MIPS 2014-11-25 03:50:31 +00:00
sys Merge from projects/sendfile: extend protocols API to support 2014-11-30 13:24:21 +00:00
teken
tools
ufs Merge from projects/sendfile: 2014-11-23 12:01:52 +00:00
vm Provide mutual exclusion between zone allocation/destruction and 2014-11-30 20:20:55 +00:00
x86 Improve support for XSAVE with debuggers. 2014-11-21 20:53:17 +00:00
xdr
xen opt_global.h is included automatically in the build. No need to 2014-11-18 17:06:56 +00:00
Makefile