Date: Thu, 6 Aug 2009 22:35:01 +0200 From: Juergen Lock <nox@jelal.kn-bremen.de> To: Alexander Motin <mav@FreeBSD.org> Cc: freebsd-current@FreeBSD.org, Juergen Lock <nox@jelal.kn-bremen.de> Subject: Re: (es)ata drives may need an explicit spinup command? Message-ID: <20090806203501.GA16639@triton.kn-bremen.de> In-Reply-To: <4A7B357C.5010203@FreeBSD.org> References: <20090806191848.GA14171@triton.kn-bremen.de> <4A7B357C.5010203@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Aug 06, 2009 at 10:56:44PM +0300, Alexander Motin wrote: > Juergen Lock wrote: > > So I tested esata on a siis pcie card with a 750G Seagate Freeagent Pro > > drive and it does work - until the drive falls into powersave mode > > after being idle for a little while. :( (I had the drive on 1394 > > before on another box where it was able to recover from this condition, > > but not on usb or esata - and the drive's 1394 interface died a while > > ago and also esata is faster anyway...) > > > > And now I came across this patch for the linux ata driver: > > http://git.kernel.org/?p=linux/kernel/git/jgarzik/libata-dev.git;a=commitdiff;h=169439c2e35f01e7832a9b4fc8a7446980c3d593;hp=1e999736cafdffc374f22eed37b291129ef82e4e > > > > So my question is, could the same be done in our ata code? > > I have a slight :) hope it would help this drive too at least as it > > does seem to work on Linux... > > I am not sure it is related to your case, as you said your drive works > for some time after plug. If drive spun-down automatically due to > inactivity, it should spin-up automatically also, as OS unable to track > that transition. 30 seconds of ATA command timeout should be sufficient > for drive to do this. Do you have any other symptoms? Well the drive becomes completely `dead' for our drivers once in this state, and when I try an atacontrol detach/attach on it at that point its not even found anymore. (And when I powercycle it by pulling its little wall wart for a moment it comes back.) Oh and I think I saw something in our 1394 drivers too that does send something like a spinup command... Also there have been threads on the net about Seagate external drives not working properly on Linux for a few years as well because of this powersaving `feature', and the drive does work on Linux here as I said (at least on esata) so I suspected that commit might have been what fixed it. Thanx, Juergen
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090806203501.GA16639>