diff options
author | kib <kib@FreeBSD.org> | 2009-03-12 12:43:56 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2009-03-12 12:43:56 +0000 |
commit | 9e27cf574d2cb8f717bf50b309f68de1fac30375 (patch) | |
tree | cf17c989527b9b03232ce80b2268236e8559acb0 /sys/dev/usb/usb_handle_request.c | |
parent | 33b0309eb2b6e212d5a03522483eb96411ab631a (diff) | |
download | FreeBSD-src-9e27cf574d2cb8f717bf50b309f68de1fac30375.zip FreeBSD-src-9e27cf574d2cb8f717bf50b309f68de1fac30375.tar.gz |
The non-modifying EA VOPs are executed with only shared vnode lock taken.
Provide a custom lock around initializing and tearing down EA area,
to prevent both memory leaks and double-free of it. Count the number
of EA area accessors.
Lock protocol requires either holding exclusive vnode lock to modify
i_ea_area, or shared vnode lock and owning IN_EA_LOCKED flag in i_flag.
Noted by: YAMAMOTO, Taku <taku tackymt homeip net>
Tested by: pho (previous version)
MFC after: 2 weeks
Diffstat (limited to 'sys/dev/usb/usb_handle_request.c')
0 files changed, 0 insertions, 0 deletions