Re: git: fe66e4caf456 - main - rangelock: Disable cheat mode by default
Date: Tue, 27 Aug 2024 21:09:31 UTC
On 27 Aug 2024, at 21:38, Mark Johnston <markj@FreeBSD.org> wrote: > > The branch main has been updated by markj: > > URL: https://cgit.FreeBSD.org/src/commit/?id=fe66e4caf4561ee3349ad7a29cc9976108c3b04f > > commit fe66e4caf4561ee3349ad7a29cc9976108c3b04f > Author: Mark Johnston <markj@FreeBSD.org> > AuthorDate: 2024-08-27 20:31:25 +0000 > Commit: Mark Johnston <markj@FreeBSD.org> > CommitDate: 2024-08-27 20:36:31 +0000 > > rangelock: Disable cheat mode by default > > Cheat mode is incompatible with code which locks multiple ranges in the > same vnode, with at least one range being write-locked. This can arise > in kern_copy_file_range(). Until that's handled somehow, avoid the > problem to make the fusefs tests stable. > > PR: 281073 > Fixes: 9ef425e560a9 ("rangelocks: add fast cheating mode") > Reviewed by: kib > Differential Revision: https://reviews.freebsd.org/D46457 > --- > sys/kern/kern_rangelock.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sys/kern/kern_rangelock.c b/sys/kern/kern_rangelock.c > index 14163dd1c782..38449f71a8b7 100644 > --- a/sys/kern/kern_rangelock.c > +++ b/sys/kern/kern_rangelock.c > @@ -66,7 +66,7 @@ > * trylocks are same as normal locks but do not drain. > */ > > -static int rangelock_cheat = 1; > +static int rangelock_cheat = 0; This probably deserves a comment for why it’s disabled/the risks of enabling it, and/or some text in the sysctl description? Jess > SYSCTL_INT(_debug, OID_AUTO, rangelock_cheat, CTLFLAG_RWTUN, > &rangelock_cheat, 0, > "");