svn commit: r270648 - in head/sys: kern sys
John Baldwin
jhb at freebsd.org
Tue Aug 26 19:29:01 UTC 2014
On Tuesday, August 26, 2014 9:55:22 am Mateusz Guzik wrote:
> On Tue, Aug 26, 2014 at 09:45:38AM -0400, John Baldwin wrote:
> > On Tuesday, August 26, 2014 4:17:22 am Mateusz Guzik wrote:
> > > Author: mjg
> > > Date: Tue Aug 26 08:17:22 2014
> > > New Revision: 270648
> > > URL: http://svnweb.freebsd.org/changeset/base/270648
> > >
> > > Log:
> > > Fix up races with f_seqcount handling.
> > >
> > > It was possible that the kernel would overwrite user-supplied hint.
> > >
> > > Abuse vnode lock for this purpose.
> > >
> > > In collaboration with: kib
> > > MFC after: 1 week
> >
> > Do we care about this being correct enough to penalize reads by single-
> > threading them? This is just an optimization, if you lose the race it
doesn't
> > actually break anything.
> >
>
> We don't singlethread reads, vnode is locked exactly as it was
> previously.
>
> What changes is that a rarely used (as compared to reads) function
> playing with f_seqcount now takes exclusive lock.
>
> If anything, this is an optimization since it removes an unnecessary
> load_acq.
Ah, I misread the diff and had thought the fcntl() changes were in the read()
path instead.
--
John Baldwin
More information about the svn-src-all
mailing list