]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC: r307694
authorrmacklem <rmacklem@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Thu, 3 Nov 2016 00:58:50 +0000 (00:58 +0000)
committerrmacklem <rmacklem@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Thu, 3 Nov 2016 00:58:50 +0000 (00:58 +0000)
commit3a457fbf5dad853a8d15eae0870fbdf34a77ba7f
treedf2ab6fdc8c284f9887c87ba443f6eb67e319683
parent192280fb11a07d6f7e2306de08a34957bec8541b
MFC: r307694
A problem w.r.t. interoperation between the FreeBSD NFSv4.1 server with
delegations enabled and the Linux NFSv4.1 client was reported in
reviews.freebsd.org/D7891.
I believe that the FreeBSD server behaviour conforms to the RFC and that
the Linux client has a bug. Therefore, I do not think the proposed patch
is appropriate. When nfsrv_writedelegifpos is non-zero, the FreeBSD
server will issue a write delegation for a read open if possible.
The Linux client then erroneously assumes that the credentials used for
the read open can write the file.
This patch reverses the default value for nfsrv_writedelegifpos to 0 so
that the default behaviour is Linux compatible and adds a sysctl that can
be used to set nfsrv_writedelegifpos.

This change should only affect users that are mounting a FreeBSD server
with delegations enabled (they are not enabled by default) with a Linux
NFSv4.1 client mount.

git-svn-id: svn://svn.freebsd.org/base/stable/10@308241 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/fs/nfsserver/nfs_nfsdstate.c