Date: Thu, 12 Mar 2009 12:43:56 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/ufs/ffs ffs_vfsops.c ffs_vnops.c src/sys/ufs/ufs inode.h Message-ID: <200903121244.n2CCiEmK080144@repoman.freebsd.org>
index | next in thread | raw e-mail
kib 2009-03-12 12:43:56 UTC
FreeBSD src repository
Modified files:
sys/ufs/ffs ffs_vfsops.c ffs_vnops.c
sys/ufs/ufs inode.h
Log:
SVN rev 189737 on 2009-03-12 12:43:56Z by kib
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
Revision Changes Path
1.363 +1 -0 src/sys/ufs/ffs/ffs_vfsops.c
1.187 +90 -63 src/sys/ufs/ffs/ffs_vnops.c
1.55 +3 -0 src/sys/ufs/ufs/inode.h
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903121244.n2CCiEmK080144>
