cvs commit: src/sys/kern kern_descrip.c kern_event.c sys_socket.c
vfs_vnops.c
Robert Watson
rwatson at FreeBSD.org
Thu Jul 22 13:40:24 PDT 2004
rwatson 2004-07-22 20:40:24 UTC
FreeBSD src repository
Modified files:
sys/kern kern_descrip.c kern_event.c sys_socket.c
vfs_vnops.c
Log:
Push Giant acquisition down into fo_stat() from most callers. Acquire
Giant conditional on debug.mpsafenet in the socket soo_stat() routine,
unconditionally in vn_statfile() for VFS, and otherwise don't acquire
Giant. Accept an unlocked read in kqueue_stat(), and cryptof_stat() is
a no-op. Don't acquire Giant in fstat() system call.
Note: in fdescfs, fo_stat() is called while holding Giant due to the VFS
stack sitting on top, and therefore there will still be Giant recursion
in this case.
Revision Changes Path
1.238 +0 -6 src/sys/kern/kern_descrip.c
1.74 +1 -0 src/sys/kern/kern_event.c
1.63 +5 -1 src/sys/kern/sys_socket.c
1.205 +2 -0 src/sys/kern/vfs_vnops.c
More information about the cvs-all
mailing list