Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Apr 2005 11:11:18 -0600
From:      Karl Denninger <karl@denninger.net>
To:        "Matthew N. Dodd" <mdodd@freebsd.org>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: DANGER WILL ROBINSON! SERIOUS problem with current5.4-PRERELEASE - UPDATE (real this time) #2
Message-ID:  <20050401111118.A25432@denninger.net>
In-Reply-To: <20050331120100.P328@sasami.jurai.net>; from Matthew N. Dodd on Thu, Mar 31, 2005 at 12:02:20PM -0500
References:  <20050329200841.A772@denninger.net> <20050329233843.L328@sasami.jurai.net> <20050329234318.A3883@denninger.net> <20050330230046.A68235@denninger.net> <20050331120100.P328@sasami.jurai.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Thu, Mar 31, 2005 at 12:02:20PM -0500, Matthew N. Dodd wrote:
> On Wed, 30 Mar 2005, Karl Denninger wrote:
> > Removing the FIRST delta, which is:
> >
> > 218a219,221
> >       if (!dumping)
> >           callout_reset(&request->callout, request->timeout * hz,
> >                         (timeout_t*)ata_timeout, request);
> >
> > appears to get rid of the crashes while not harming data integrity OR the
> > reqeueing.
> 
> I'd be interested to know if the attached patch does anything.
> 
> -- 
> 10 40 80 C0 00 FF FF FF FF C0 00 00 00 00 10 AA AA 03 00 00 00 08 00
> Index: ata-queue.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/ata/ata-queue.c,v
> retrieving revision 1.32.2.6
> diff -u -u -r1.32.2.6 ata-queue.c
> --- ata-queue.c	23 Mar 2005 04:50:26 -0000	1.32.2.6
> +++ ata-queue.c	31 Mar 2005 17:00:46 -0000
> @@ -217,8 +217,7 @@
>      }
>      else {
>  	if (!dumping)
> -	    callout_reset(&request->callout, request->timeout * hz,
> -			  (timeout_t*)ata_timeout, request);
> +            callout_drain(&request->callout);
>  	if (request->bio && !(request->flags & ATA_R_TIMEOUT)) {
>  	    ATA_DEBUG_RQ(request, "finish bio_taskqueue");
>  	    bio_taskqueue(request->bio, (bio_task_t *)ata_completed, request);
> 

Removing the first delta has allowed the system to survive for over 24
hours, albiet while taking retryable errors.

I have not yet attmepted this patch - but will now that I know that the
system is stable with the first delta OUT.

At minimum Matt that first delta has to come out to avoid the "pukes and
chokes" - whether the above is recommended (by me anyway) I can't say yet -
more as I know it.

--
-- 
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




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