On Sun, 3 Jun 2018 13:09:43 -0700
Philip Guenther <guent...@gmail.com> wrote:

> On Sun, Jun 3, 2018 at 12:51 PM, Amit Kulkarni <amit.o...@gmail.com> wrote:
> 
> > On Sun, 3 Jun 2018 10:37:30 -0700
> > Philip Guenther <guent...@gmail.com> wrote:
> >
> ...
> 
> > > Index: kern/kern_rwlock.c
> > > ===================================================================
> > > RCS file: /data/src/openbsd/src/sys/kern/kern_rwlock.c,v
> > > retrieving revision 1.35
> > > diff -u -p -r1.35 kern_rwlock.c
> > > --- kern/kern_rwlock.c        21 Mar 2018 12:28:39 -0000      1.35
> > > +++ kern/kern_rwlock.c        3 Jun 2018 17:00:02 -0000
> > > @@ -223,6 +223,8 @@ _rw_enter(struct rwlock *rwl, int flags
> > >       lop_flags = LOP_NEWORDER;
> > >       if (flags & RW_WRITE)
> > >               lop_flags |= LOP_EXCLUSIVE;
> > > +     if (flags & RW_DUPOK)
> > > +             lop_flags |= LOP_DUPOK;
> > >       if ((flags & RW_NOSLEEP) == 0 && (flags & RW_DOWNGRADE) == 0)
> > >               WITNESS_CHECKORDER(&rwl->rwl_lock_obj, lop_flags, file,
> > line,
> > >                   NULL);
> > > Index: kern/vfs_subr.c
> > > ===================================================================
> > > RCS file: /data/src/openbsd/src/sys/kern/vfs_subr.c,v
> > > retrieving revision 1.273
> > > diff -u -p -r1.273 vfs_subr.c
> > > --- kern/vfs_subr.c   27 May 2018 06:02:14 -0000      1.273
> > > +++ kern/vfs_subr.c   3 Jun 2018 17:04:09 -0000
> > > @@ -188,6 +188,11 @@ vfs_busy(struct mount *mp, int flags)
> > >       else
> > >               rwflags |= RW_NOSLEEP;
> > >
> > > +#ifdef WITNESS
> > > +     if (flags & VB_DUPOK)
> > > +             rwflags |= RW_DUPOK;
> > > +#endif
> > > +
> >
> > The other parts where you added the dup are not checking for Witness. This
> > part above should be for all kernels, right? Witness or non-witness.
> >
> 
> No, the other code-generating additions, in kern_rwlock.c, are also inside
> #ifdef WITNESS, just outside of the context of the diff.  The RW_DUPOK flag
> has no effect if it's not a WITNESS kernel so excluding those lines is
> intentional.

My apologies, and sorry for the noise!

Reply via email to