freebsd-dev/sys
Jason A. Harmening 372691a7ae unionfs: release parent vnodes in deferred context
Each unionfs node holds a reference to its parent directory vnode.
A single open file reference can therefore end up keeping an
arbitrarily deep vnode hierarchy in place.  When that reference is
released, the resulting VOP_RECLAIM call chain can then exhaust the
kernel stack.

This is easily reproducible by running the unionfs.sh stress2 test.
Fix it by deferring recursive unionfs vnode release to taskqueue
context.

PR: 238883
Reviewed By:	kib (earlier version), markj
Differential Revision: https://reviews.freebsd.org/D30748
2021-06-29 06:02:01 -07:00
..
amd64 Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
arm Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
arm64 Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
bsm
cam cam: Fix GENERIC-MMCCAM build 2021-06-28 17:22:35 -06:00
cddl fbt: Remove some handling for multiple CTF containers 2021-04-02 17:49:13 -04:00
compat Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
conf ice_ddp: Update to 1.3.24.0 2021-06-25 10:21:39 -07:00
contrib zfs: merge openzfs/zfs@5e2c8338b (master) into main 2021-06-26 02:21:11 +02:00
crypto ossl: Use crypto_cursor_segment(). 2021-05-25 16:59:19 -07:00
ddb fix style nit: space after if 2021-05-05 15:26:09 -06:00
dev ued may be NULL here which will cause a panic... reproducable by 2021-06-28 18:09:14 -07:00
dts arm: allwinner: dtb: Add overlays to disable SD/MMC node 2021-06-14 20:47:37 +02:00
fs unionfs: release parent vnodes in deferred context 2021-06-29 06:02:01 -07:00
gdb gdb: report specific stop reason for watchpoints 2021-03-30 11:36:41 -03:00
geom gconcat: Implement new online append feature 2021-06-14 11:42:03 -06:00
gnu
i386 Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
isa newbus: Move from bus_child_{pnpinfo,location}_src to bus_child_{pnpinfo,location} with sbuf 2021-06-22 20:52:06 -06:00
kern Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
kgssapi
libkern Use '.arch_extension crc' in the arm64 crc32 code 2021-05-06 07:42:35 +00:00
mips Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
modules zfs: merge openzfs/zfs@5e2c8338b (master) into main 2021-06-26 02:21:11 +02:00
net pf: revert: Use counter(9) for pf_state byte/packet tracking 2021-06-29 07:24:53 +00:00
net80211 net80211: ieee80211_probereq_ie fix length calculation for hw scans 2021-06-28 12:17:11 +00:00
netgraph Consistently use the SOLISTENING() macro 2021-06-14 17:32:27 -04:00
netinet sctp: initialize sequence numbers for ECN correctly 2021-06-27 20:14:48 +02:00
netinet6 sctp: initialize sequence numbers for ECN correctly 2021-06-27 20:14:48 +02:00
netipsec ipsec: globalize lft zone and zero out buffers at allocation time 2021-06-28 08:14:26 +00:00
netpfil pf: make sure the dtrace probe has safe access to state 2021-06-29 07:24:53 +00:00
netsmb netsmb: Avoid a read-after-free in smb_t2_request_int() 2021-05-26 10:45:40 -04:00
nfs Fix panic when using BOOTP to resolve root path. 2021-03-28 14:02:40 -05:00
nfsclient nfs: Cleanup dead files 2021-03-17 06:16:31 +11:00
nfsserver nfs: Cleanup dead files 2021-03-17 06:16:31 +11:00
nlm
ofed mlx4/OFED: replace the struct net_device with struct ifnet 2021-06-18 21:20:08 +00:00
opencrypto crypto: Remove now-unused crypto_cursor_seg{base,len}. 2021-06-16 15:23:16 -07:00
powerpc Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
riscv Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
rpc Consistently use the SOLISTENING() macro 2021-06-14 17:32:27 -04:00
security tcp_input/syncache: acquire only read lock on PCB for SYN,!ACK packets 2021-04-12 08:25:31 -07:00
sys Add infrastructure required for Linux coredump support 2021-06-29 08:49:12 +01:00
teken
tests tests: Revise FIB lookups per second benchmarking routines 2021-06-17 08:49:09 +02:00
tools makesyscalls.lua: improve generated file style(9) compliance 2021-05-13 13:59:25 -04:00
ufs ffs_softdep: force sync if journal is low in journal_check_space 2021-06-23 23:47:05 +03:00
vm Un-staticise vm_page_init_page() 2021-06-17 16:58:44 +03:00
x86 Reduce code duplication in machine/_types.h 2021-06-14 16:30:16 +01:00
xdr
xen x86/xen: remove PVHv1 code 2021-05-17 11:41:21 +02:00
Makefile