diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2010-09-10 23:49:33 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2010-09-10 23:49:33 +0000 |
commit | 5120adc2800eb3369aa1263ee45dfc80738d4433 (patch) | |
tree | c526bfacc6337c82c67bd01964ef196aa9fdae87 /lib/libc/stdio/flags.c | |
parent | 92f51406df5cac0f60fd61b7838cf4136653c13e (diff) | |
download | FreeBSD-src-5120adc2800eb3369aa1263ee45dfc80738d4433.zip FreeBSD-src-5120adc2800eb3369aa1263ee45dfc80738d4433.tar.gz |
This patch applies one of the two fixes suggested by
zack.kirsch at isilon.com for a race between nfsrv_freeopen()
and nfsrv_getlockfile() in the experimental NFS server that
he found during testing. Although nfsrv_freeopen() holds a
sleep lock on the lock file structure when called with
cansleep != 0, nfsrv_getlockfile() could still search the
list, once it acquired the NFSLOCKSTATE() mutex. I believe
that acquiring the mutex in nfsrv_freeopen() fixes the race.
MFC after: 2 weeks
Diffstat (limited to 'lib/libc/stdio/flags.c')
0 files changed, 0 insertions, 0 deletions