From owner-freebsd-stable@FreeBSD.ORG Fri Nov 7 19:12:57 2008 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 30CDE1065688 for ; Fri, 7 Nov 2008 19:12:57 +0000 (UTC) (envelope-from peter@wemm.org) Received: from yw-out-2324.google.com (yw-out-2324.google.com [74.125.46.29]) by mx1.freebsd.org (Postfix) with ESMTP id B9A408FC1A for ; Fri, 7 Nov 2008 19:12:56 +0000 (UTC) (envelope-from peter@wemm.org) Received: by yw-out-2324.google.com with SMTP id 9so567925ywe.13 for ; Fri, 07 Nov 2008 11:12:55 -0800 (PST) Received: by 10.142.199.10 with SMTP id w10mr1040916wff.235.1226085175078; Fri, 07 Nov 2008 11:12:55 -0800 (PST) Received: by 10.142.255.21 with HTTP; Fri, 7 Nov 2008 11:12:55 -0800 (PST) Message-ID: Date: Fri, 7 Nov 2008 11:12:55 -0800 From: "Peter Wemm" To: "Jeremy Chadwick" In-Reply-To: <20081107071752.GA5842@icarus.home.lan> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <20081107071752.GA5842@icarus.home.lan> Cc: votdev@gmx.de, sos@freebsd.org, freebsd-stable@freebsd.org, freebsd-hardware@freebsd.org Subject: Re: Western Digital hard disks and ATA timeouts X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2008 19:12:57 -0000 On Thu, Nov 6, 2008 at 11:17 PM, Jeremy Chadwick wrote: [..] > As stated, FreeBSD's ATA command timeout is hard-set to 5 seconds, and > is not adjustable without editing the ATA code yourself and increasing > the value. The FreeNAS folks have made patches available to turn the > timeout value into a sysctl. > > Soren and/or others, please increase this timeout value. Five seconds > has now been deemed too aggressive a default. And please consider > migrating the timeout value into a sysctl. The 5 second timeout has been a problem for quite a while actually. I've had a number of instances where I've had to increase it to 20 or 30 seconds when recovering from marginal drives. The longest "successful" recovery attempt I've seen was 26 seconds, I believe on a Maxtor drive a few years ago. ("successful" == the drive spent 26 seconds but eventually successfully read the sector). Even the IBM death star drives could take much longer than 5 seconds to do a recovery 5 years ago. 5 seconds has never been a good default. I think the timeout should be increased to at least 30 seconds. My windows box has a timeout that goes for several minutes. If there is concern about FreeBSD appearing to hang, I could imagine that a console warning message could be printed after 5 seconds. But just say "drive has not yet responded". But give it more time. In this day and age we're generally not playing games with udma33 vs 66, notched cables, poor CRC support etc. SATA seems to have eliminated all that. Hmm, it might make sense to increase the timeout on SATA connections to 2 or 3 minutes by default. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV "All of this is for nothing if we don't go to the stars" - JMS/B5 "If Java had true garbage collection, most programs would delete themselves upon execution." -- Robert Sewell