From owner-freebsd-current Thu Jul 2 17:39:57 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id RAA07465 for freebsd-current-outgoing; Thu, 2 Jul 1998 17:39:57 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from ns1.yes.no (ns1.yes.no [195.119.24.10]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id RAA07455 for ; Thu, 2 Jul 1998 17:39:55 -0700 (PDT) (envelope-from eivind@bitbox.follo.net) Received: from bitbox.follo.net (bitbox.follo.net [195.204.143.218]) by ns1.yes.no (8.8.7/8.8.7) with ESMTP id AAA08924; Fri, 3 Jul 1998 00:39:47 GMT Received: (from eivind@localhost) by bitbox.follo.net (8.8.8/8.8.6) id CAA23450; Fri, 3 Jul 1998 02:39:46 +0200 (MET DST) Message-ID: <19980703023945.08867@follo.net> Date: Fri, 3 Jul 1998 02:39:45 +0200 From: Eivind Eklund To: Kevin Day Cc: andreas@klemm.gtn.com, current@FreeBSD.ORG Subject: Re: -current wishlist References: <19980702213011.35162@follo.net> <199807030035.TAA04624@home.dragondata.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.89.1i In-Reply-To: <199807030035.TAA04624@home.dragondata.com>; from Kevin Day on Thu, Jul 02, 1998 at 07:35:30PM -0500 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Thu, Jul 02, 1998 at 07:35:30PM -0500, Kevin Day wrote: > > These fix a couple of reasons for such problems, I think. They're > > completely untested. Feel free to test them :-) > > > > I'll give them a try. :) > > However... > > > > > Index: ccd.c > > =================================================================== > > RCS file: /home/ncvs/src/sys/dev/ccd/ccd.c,v > > retrieving revision 1.32 > > diff -u -r1.32 ccd.c > > --- ccd.c 1998/03/09 20:39:26 1.32 > > +++ ccd.c 1998/05/31 01:10:56 > > @@ -427,7 +433,7 @@ > > printf("ccd%d: interleave must be at least %d\n", > > ccd->ccd_unit, (maxsecsize / DEV_BSIZE)); > > #endif > > - while (ci >= cs->sc_cinfo) { > > + while (ci && ci >= cs->sc_cinfo) { > > free(ci->ci_path, M_DEVBUF); > > ci--; > > } > > I'm not quite sure I understand how this would help. If this were happening, > shouldn't ccd blow up all over the place? :) Or is it just a case of 'lets > make really sure'? :) This one only strikes in an obscure error condition WRT a previous malloc, IIRC. > > @@ -918,7 +929,8 @@ > > #endif > > cb[0] = cbp; > > if (cs->sc_cflags & CCDF_MIRROR && > > - (cbp->cb_buf.b_flags & B_READ) == 0) { > > + (cbp->cb_buf.b_flags & B_READ) == 0 > > + && ci2) { > > /* mirror, start one more write */ > > cbp = getccdbuf(); > > bzero(cbp, sizeof (struct ccdbuf)); > > I'm not mirroring, so I doubt this is the cause.. (if that helps you narrow > things down) Not really - I'm not running CCD, as I said. I just do patches based on 'obvious errors'. > In any case, thanks a lot, I'll apply and see what happens. :) You're welcome. Eivind. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message