cvs commit: src/sys/kern vfs_syscalls.c
kabaev at gmail.com
Mon Dec 19 20:12:36 PST 2005
On Tue, 20 Dec 2005 03:27:24 +0000
"Christian S.J. Peron" <csjp at FreeBSD.org> wrote:
> On Tue, Dec 20, 2005 at 12:49:59AM +0000, Pawel Jakub Dawidek wrote:
> > pjd 2005-12-20 00:49:59 UTC
> > FreeBSD src repository
> > Modified files:
> > sys/kern vfs_syscalls.c
> > Log:
> > Reduce Giant scope a bit, as fdrop() is believed to be MPSAFE.
> > The purpose of this change is consistency (not performance
> > improvement:)), as it was hard to tell if fdrop() is MPSAFE or not
> > when I saw it sometimes under the Giant and sometimes without it.
> > Glanced at by: ssouhlal, kan
> > Revision Changes Path
> > 1.396 +7 -9 src/sys/kern/vfs_syscalls.c
> Did you check to make sure that all the fo_close() operations are MP
> safe? I think we are safe in the common case, but we need to pay
> special attention to edge cases like the ones in
> sys/opencrypto/cryptodev.c (cryptof_close()). I am not sure that
> these operations are MP safe yet, in which case we might run into
> problems without the Giant aquisition.
> Christian S.J. Peron
> csjp at FreeBSD.ORG
> FreeBSD Committer
> FreeBSD Security Team
As far as I can see, the code changes apply only to descriptors backed
by vnodes, and vn_closefile takes care of acquiring Giant before
calling into non-mpsafe FS VOPS. So cryptof_close() operation is not
affected by this patch.
More information about the cvs-src