Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 01 Mar 2000 11:00:42 +0800
From:      Peter Wemm <peter@netplex.com.au>
To:        Bernd Walter <ticso@cicely5.cicely.de>
Cc:        Alfred Perlstein <bright@wintelcom.net>, Greg Lehey <grog@lemis.com>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org, Bernd Walter <ticso@cicely.de>
Subject:   Re: cvs commit: src/sys/dev/vinum vinumrequest.c 
Message-ID:  <20000301030042.125021CE2@overcee.netplex.com.au>
In-Reply-To: Message from Bernd Walter <ticso@cicely5.cicely.de>  of "Wed, 01 Mar 2000 01:04:01 %2B0100." <20000301010400.A30259@cicely5.cicely.de> 

next in thread | previous in thread | raw e-mail | index | archive | help
Bernd Walter wrote:
> On Tue, Feb 29, 2000 at 01:17:37AM -0800, Alfred Perlstein wrote:
> > * Greg Lehey <grog@lemis.com> [000229 00:37] wrote:
> > > On Tuesday, 29 February 2000 at  0:25:00 -0800, Alfred Perlstein wrote:
> > > > * Greg Lehey <grog@FreeBSD.org> [000228 22:45] wrote:
> > > >> grog        2000/02/28 22:14:45 PST
> > > >>
> > > >>   Modified files:
> > > >>     sys/dev/vinum        vinumrequest.c
> > > >>   Log:
> > > >>   launch_requests: If too many requests are active, include PCATCH in
> > > >>   the tsleep call flags.
> > > >>
> > > >>   Submitted-by:  Bernd Walter <ticso@cicely.de>
> > > >
> > > > grrr!
> > > >
> > > >                 while ((drive->active >= DRIVE_MAXACTIVE)   /* it has t
    oo much to do already, */
> > > >>> (vinum_conf.active >= VINUM_MAXACTIVE))   /* or too many requests glo
    bally */
> > > > -                   tsleep(&launch_requests, PRIBIO, "vinbuf", 0); /* w
    ait for it to subside */
> > > > +                   tsleep(&launch_requests, PRIBIO | PCATCH, "vinbuf",
     0); /* wait for it to subside */
> > > >                 drive->active++;
> > > >
> > > > please back this out, i've already fixed this twice, if you actually
> > > > get a signal you'll spin in the kernel.
> > > >
> > > > the correct solution must check the return from tsleep and actually
> > > > do something with an error return, for now we've agreed to ignore
> > > > signals until a safe return can be implemented.  PCATCH must be
> > > > removed.
> > > 
> > > OK, make a suggestion.
> > 
> > Remove PCATCH. :)
> > 
> > > 
> > > The trouble is, you and Bernd keep asking for opposite things, and I
> > > was getting out of phase on the whole matter.  In any case, another
> > > change I made (MAXREQUESTS = 30000) means that we'll never call tsleep
> > > here.
> > 
> > The point is that PCATCH never works here, and that there shouldn't
> > be landminds in the code, if someone where to reduce MAXREQUESTS
> > to test something they'd have a good chance of getting hit.
> 
> It never worked here too.
> But what do you want? Greg already removed it:
> bash-2.03$ cd /var/d7/src-2000-02-12/src/sys/dev/vinum
> bash-2.03$ grep PCATCH *
> vinumconfig.c:  if ((error = tsleep(&vinum_conf, PRIBIO | PCATCH, "vincfg", 0
    )) != 0)

Data point, after a cvsup 5 minutes ago:

peter@overcee[10:59am]~src/sys/dev/vinum-290> cvs -q up -A
peter@overcee[10:59am]~src/sys/dev/vinum-291> grep PCATCH *
vinumconfig.c:  if ((error = tsleep(&vinum_conf, PRIBIO | PCATCH, "vincfg", 0)) != 0)
vinumrequest.c:             tsleep(&launch_requests, PRIBIO | PCATCH, "vinbuf", 0); /* wait for it to subside */

It's still there.

Cheers,
-Peter
--
Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au
"All of this is for nothing if we don't go to the stars" - JMS/B5



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000301030042.125021CE2>