From owner-freebsd-stable@FreeBSD.ORG Thu Mar 31 03:08:32 2005 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 69AFD16A4CE for ; Thu, 31 Mar 2005 03:08:32 +0000 (GMT) Received: from FS.denninger.net (wsip-68-15-213-52.at.at.cox.net [68.15.213.52]) by mx1.FreeBSD.org (Postfix) with ESMTP id 477F443D1F for ; Thu, 31 Mar 2005 03:08:31 +0000 (GMT) (envelope-from karl@FS.denninger.net) Received: from fs.denninger.net (localhost [127.0.0.1]) by FS.denninger.net (8.13.3/8.13.1) with SMTP id j2V38UnS047045 for ; Wed, 30 Mar 2005 21:08:30 -0600 (CST) (envelope-from karl@FS.denninger.net) Received: from fs.denninger.net [127.0.0.1] by Spamblock-sys; Wed Mar 30 21:08:30 2005 Received: (from karl@localhost) by FS.denninger.net (8.13.3/8.13.1/Submit) id j2V38UWf047043; Wed, 30 Mar 2005 21:08:30 -0600 (CST) (envelope-from karl) Message-ID: <20050330210830.A46956@denninger.net> Date: Wed, 30 Mar 2005 21:08:30 -0600 From: Karl Denninger To: "Matthew N. Dodd" References: <20050329200841.A772@denninger.net> <20050329233843.L328@sasami.jurai.net> <20050329230830.A3222@denninger.net> <20050329234318.A3883@denninger.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.93.2i In-Reply-To: <20050329234318.A3883@denninger.net>; from Karl Denninger on Tue, Mar 29, 2005 at 11:43:18PM -0600 Organization: Karl's Sushi and Packet Smashers X-Die-Spammers: Spammers cheerfully broiled for supper and served with ketchup! cc: freebsd-stable@freebsd.org Subject: Re: DANGER WILL ROBINSON! SERIOUS problem with current 5.4-PRERELEASE - UPDATE X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Mar 2005 03:08:32 -0000 On Tue, Mar 29, 2005 at 11:43:18PM -0600, Karl Denninger wrote: > Here's the diff and some thoughts.... > > Fs:/usr/src/sys/dev/ata> cvs diff -r 1.32.2.5 ata-queue.c > Index: ata-queue.c > =================================================================== > RCS file: /usr/cvs/src/sys/dev/ata/ata-queue.c,v > retrieving revision 1.32.2.5 > retrieving revision 1.32.2.6 > diff -r1.32.2.5 -r1.32.2.6 > 30c30 > < __FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.32.2.5 2004/10/24 09:27:37 sos Exp $"); > --- > > __FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.32.2.6 2005/03/23 04:50:26 mdodd Exp $"); > 218a219,221 > > if (!dumping) > > callout_reset(&request->callout, request->timeout * hz, > > (timeout_t*)ata_timeout, request); > 241,243c244,249 > < > < /* if reinit succeeded and retries still permit, reinject request */ > < if (ata_reinit(ch) && request->retries-- > 0 && request->device->param){ > --- > > /* > > * if reinit succeeds, retries still permit and device didn't > > * get removed by the reinit, reinject request > > */ > > if (!ata_reinit(ch) && request->retries-- > 0 > > && request->device->param){ > 245a252 > > request->donecount = 0; Removing the second change (changing the test on the "ata_reinit") appears to prevent both the destabilization and the actual requeue from taking place (that is, you get the immediate disconnect from the array when the error occurs; therefore whatever is causing the destabilization doesn't happen.) I will attempt to remove the first delta alone (and put back the second), but from a quick perusal of the code I doubt this will make a material change. -- -- Karl Denninger (karl@denninger.net) Internet Consultant & Kids Rights Activist http://www.denninger.net My home on the net - links to everything I do! http://scubaforum.org Your UNCENSORED place to talk about DIVING! http://www.spamcuda.net SPAM FREE mailboxes - FREE FOR A LIMITED TIME! http://genesis3.blogspot.com Musings Of A Sentient Mind