freebsd-skq/sys/fs/nfsserver
Rick Macklem fdab4d3b29 Fix LORs between vn_start_write() and vn_lock() in nfsrv_copymr().
When coding the pNFS server, I added vn_start_write() calls in nfsrv_copymr()
done while the vnodes were locked, not realizing I had introduced LORs and
possible deadlock when an exported file system on the MDS is suspended.
This patch fixes the LORs by moving the vn_start_write() calls up to before
where the vnodes are locked. For "tvp", the vn_start_write() probaby isn't
necessary, because NFS mounts can't be suspended. However, I think doing
so is harmless.
Thanks go to kib@ for letting me know that I had introduced these LORs.
This patch only affects the behaviour of the pNFS server when pnfsdscopymr(8)
is used to recover a mirrored DS.
2018-08-18 19:14:06 +00:00
..
nfs_fha_new.c sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfs_fha_new.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfs_nfsdcache.c style: Remove remaining deprecated MALLOC/FREE macros 2018-01-25 22:25:13 +00:00
nfs_nfsdkrpc.c Fix LORs between vn_start_write() and vn_lock() in the pNFS server. 2018-08-17 21:12:16 +00:00
nfs_nfsdport.c Fix LORs between vn_start_write() and vn_lock() in the pNFS server. 2018-08-17 21:12:16 +00:00
nfs_nfsdserv.c Silence newer gcc warnings. 2018-07-29 21:51:17 +00:00
nfs_nfsdsocket.c Fix LORs between vn_start_write() and vn_lock() in the pNFS server. 2018-08-17 21:12:16 +00:00
nfs_nfsdstate.c Fix LORs between vn_start_write() and vn_lock() in nfsrv_copymr(). 2018-08-18 19:14:06 +00:00
nfs_nfsdsubs.c Merge the pNFS server code from projects/pnfs-planb-server into head. 2018-06-12 19:36:32 +00:00