diff options
author | hselasky <hselasky@FreeBSD.org> | 2016-03-24 09:22:58 +0000 |
---|---|---|
committer | hselasky <hselasky@FreeBSD.org> | 2016-03-24 09:22:58 +0000 |
commit | eeaebf709773790b28a42a2f0fc59b8b552e178f (patch) | |
tree | b90853e4274e9b1ab7ff0afbb6ddf8737e294c7b /include/rpc/xdr.h | |
parent | 4716ebf81e8935d76031fbdf0f9807f86570295a (diff) | |
download | FreeBSD-src-eeaebf709773790b28a42a2f0fc59b8b552e178f.zip FreeBSD-src-eeaebf709773790b28a42a2f0fc59b8b552e178f.tar.gz |
MFC r292254:
Properly drain callouts in the IPFW subsystem to avoid use after free
panics when unloading the dummynet and IPFW modules:
- The callout drain function can sleep and should not be called having
a non-sleepable lock locked. Remove locks around "ipfw_dyn_uninit(0)".
- Add a new "dn_gone" variable to prevent asynchronous restart of
dummynet callouts when unloading the dummynet kernel module.
- Call "dn_reschedule()" locked so that "dn_gone" can be set and
checked atomically with regard to starting a new callout.
PR: 208171
Requested by: Franco Fichtner (opnsense.org)
Differential Revision: https://reviews.freebsd.org/D3855
Diffstat (limited to 'include/rpc/xdr.h')
0 files changed, 0 insertions, 0 deletions