svn commit: r273966 - in head: share/man/man9 sys/kern sys/sys

Konstantin Belousov kostikbel at gmail.com
Mon Nov 3 11:18:57 UTC 2014


On Mon, Nov 03, 2014 at 11:34:48AM +0100, Attilio Rao wrote:
> On Sun, Nov 2, 2014 at 11:49 PM, Konstantin Belousov
> <kostikbel at gmail.com> wrote:
> > On Sun, Nov 02, 2014 at 11:37:57PM +0100, Attilio Rao wrote:
> >> On Sun, Nov 2, 2014 at 10:38 PM, Konstantin Belousov
> >> <kostikbel at gmail.com> wrote:
> >> > On Sun, Nov 02, 2014 at 10:17:26PM +0100, Attilio Rao wrote:
> >> >> I think that your initial patch (what is in head now) is a better approach.
> >> >> I would just make it a lockinit() flag to make it less alien to the KPI.
> >> >>
> >> >
> >> > Ok.
> >> >
> >> > Can you explain what would the proposed lockinit() flag do ? What should
> >> > it change comparing with the current code ?
> >>
> >> You now provide LK_NODDLKTREAT on a call basis.
> >> The lockinit() flag would embed this into the lock attribute and make
> >> it always real, without the need for the callers to provide
> >> LK_NODDLKTREAT on a call basis.
> >
> > Am I reading your proposal right ? Do you mean, that for all vnodes,
> > I should disable exclusive starvation avoidance at all ? I completely
> > disagree with this.
> 
> No, I'm saying that we should support doing this at the KPI level. Not
> that you should enable this for all the vnodes.

I am unable to decipher your proposal.

The property of guaranteed non-recursive shared request is per call site,
it is not global for the life of lock.  As such, I do not understand
what would a proposed flag for lockinit(9) indicate to kern_lock.c,
vs. the currently passed flag to __lockmgr_args(9).  Only specific calls
need to avoid check for td_lk_slocks != 0, not specific locks.


More information about the svn-src-head mailing list