6225 NFSv4: setlock() can spin forever
Review Request #95 — Created Sept. 12, 2015 and submitted
There are various scenarios known when the setlock() can spin forever (please see the bug report for details). The fix makes sure the endless setlock() spinning is no longer possible.
I ran the test described in the bug report (without the Bug #6253 fixed) to
make sure the problem is no longer reproducible. I checked using the dtrace
that the retry loop in setlock() is limited as designed.
Reverted the "goto retry" removal; limited the number of retries instead.
Revision 3 (+53 -3)
Status: Closed (submitted)
commit 55a4551ddde8feed8f8e011458f992ea74257bd9 Author: Marcel Telka <firstname.lastname@example.org> AuthorDate: Wed Sep 30 01:18:52 2015 +0200 Commit: Dan McDonald <email@example.com> CommitDate: Wed Oct 7 14:30:42 2015 -0400 6225 NFSv4: setlock() can spin forever Reviewed by: Josef 'Jeff' Sipek <firstname.lastname@example.org> Reviewed by: Gordon Ross <email@example.com> Reviewed by: Garrett D'Amore <firstname.lastname@example.org> Reviewed by: Robert Mustacchi <email@example.com> Reviewed by: Arne Jansen <firstname.lastname@example.org> Approved by: Dan McDonald <email@example.com> :100644 100644 544c884... cd2151e... M usr/src/uts/common/fs/nfs/nfs4_srv.c