summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_sig.c
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2008-03-31 07:47:08 +0000
committerjeff <jeff@FreeBSD.org>2008-03-31 07:47:08 +0000
commit5e4f326d87a3ff8fcfa0d54104443f7c36248506 (patch)
tree46d0b334f810035210924641173871b00bdf08b1 /sys/kern/kern_sig.c
parentbd1adacdf1e555a14b1b6382c42a0bbfe1fbb3ed (diff)
downloadFreeBSD-src-5e4f326d87a3ff8fcfa0d54104443f7c36248506.zip
FreeBSD-src-5e4f326d87a3ff8fcfa0d54104443f7c36248506.tar.gz
- Don't free snapdata structures when they are no longer in use.
Keeping the lockmgr lock valid allows us to switch the v_lock pointer in snapshot vnodes between the embedded lockmgr lock and snapdata lock without needing the vnode interlock to protect against races - Keep unused snapdata structures in a list. - Add a function to lock the devvp and allocate a snapdata to it or acquire a new one without races. The old function was safe from creation races because we set the mount flag when creating snapshots and thus serializing them. However, it might have been subject to destroying races. Reviewed by: tegge
Diffstat (limited to 'sys/kern/kern_sig.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud