From: Tejun Heo <htejun@gmail.com>
To: Indan Zupancic <indan@nul.nu>
Cc: Paul Mundt <lethal@linux-sh.org>,
jeff@garzik.org, linux-ide@vger.kernel.org,
linux-kernel@vger.kernel.org, garyhade@us.ibm.com
Subject: Re: sd_resume redundant? [was: [PATCH] libata: implement ata_wait_after_reset()]
Date: Sun, 20 May 2007 19:17:51 +0200 [thread overview]
Message-ID: <465082BF.2070306@gmail.com> (raw)
In-Reply-To: <1345.81.207.0.53.1179671262.squirrel@secure.samage.net>
Indan Zupancic wrote:
>> Can you try to measure with sd_resume in place?
>
> [ 2.173366] sd 0:0:0:0: [sda] Starting disk
> [ 2.475422] ata2: SATA link down (SStatus 0 SControl 310)
> [ 5.478403] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> [ 5.481928] ata1.00: ata_hpa_resize 1: sectors = 234441648, hpa_sectors = 234441648
> [ 5.485904] ata1.00: ata_hpa_resize 1: sectors = 234441648, hpa_sectors = 234441648
> [ 5.485913] ata1.00: configured for UDMA/100
> [ 5.505109] sd 0:0:0:0: [sda] 234441648 512-byte hardware sectors (120034 MB)
> [ 5.505461] sd 0:0:0:0: [sda] Write Protect is off
> [ 5.505465] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
> [ 5.505612] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or
> FUA
> ...
> [ 6.157259] Restarting tasks ... done.
>
>
> And with echo 0 > /sys/class/scsi_disk/0\:0\:0\:0/manage_start_stop:
>
> [ 2.476476] ata2: SATA link down (SStatus 0 SControl 310)
> ...
> [ 2.825479] Restarting tasks ... done.
> ...
> [ 5.022076] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
> [ 5.025605] ata1.00: ata_hpa_resize 1: sectors = 234441648, hpa_sectors = 234441648
> [ 5.028594] ata1.00: ata_hpa_resize 1: sectors = 234441648, hpa_sectors = 234441648
> [ 5.028606] ata1.00: configured for UDMA/100
> [ 5.028720] sd 0:0:0:0: [sda] 234441648 512-byte hardware sectors (120034 MB)
> [ 5.028767] sd 0:0:0:0: [sda] Write Protect is off
> [ 5.028773] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
> [ 5.028831] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or
> FUA
>
> So over all it takes half a second longer to detect the disk, but
> because everything waits on it, it takes more than three seconds
> longer to resume.
Eeeek. Extra three secs doesn't sound too hot. :-(
> Setting manage_start_stop to 0 fixes it and is good enough for me, I
> didn't notice anything bad yet because of the unmanaged
> stop. Implementing background spin up will fix it too.
Just commenting out sd_resume() would be a better solution for your
case tho.
>>> Everything seems to work fine without sd_resume(), so why is it needed?
>> Because not all disks spin up without being told to do so and like it or
>> not spinning disks up on resume is the default behavior. As I wrote in
>> the other reply, it would be worthwhile to make it configurable.
>
> Not even after they receive a read command? Ugh.
After receiving a command which requires media access, they do. What
I was saying is that the current default behavior is to spin up all
devices on resume and part of that is achieved by sd_resume().
Hmmm... skipping START_STOP during sd_resume() actually is a pretty
good solution for ATA devices. I'll think about it.
Thanks.
--
tejun
next prev parent reply other threads:[~2007-05-20 17:18 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-10 7:20 libata reset-seq merge broke sata_sil on sh Paul Mundt
2007-05-10 11:28 ` Tejun Heo
2007-05-10 11:53 ` Tejun Heo
2007-05-10 12:46 ` Paul Mundt
2007-05-10 13:08 ` Tejun Heo
2007-05-11 0:52 ` Paul Mundt
2007-05-11 9:39 ` Tejun Heo
2007-05-12 3:49 ` Paul Mundt
2007-05-16 0:30 ` Paul Mundt
2007-05-16 16:44 ` [PATCH] libata: implement ata_wait_after_reset() Tejun Heo
2007-05-17 0:50 ` Paul Mundt
2007-05-17 0:59 ` Paul Mundt
2007-05-19 15:54 ` Indan Zupancic
2007-05-19 18:23 ` Tejun Heo
2007-05-19 22:54 ` Indan Zupancic
2007-05-20 9:50 ` Tejun Heo
2007-05-20 13:26 ` Indan Zupancic
2007-05-20 17:09 ` Tejun Heo
2007-05-20 19:35 ` Indan Zupancic
2007-05-19 16:39 ` Indan Zupancic
2007-05-19 18:43 ` Tejun Heo
2007-05-19 19:04 ` Tejun Heo
2007-05-19 22:33 ` sd_resume redundant? [was: [PATCH] libata: implement ata_wait_after_reset()] Indan Zupancic
2007-05-20 9:54 ` Tejun Heo
2007-05-20 14:27 ` Indan Zupancic
2007-05-20 17:17 ` Tejun Heo [this message]
2007-05-20 19:47 ` Indan Zupancic
2007-05-21 6:02 ` [PATCH] libata: implement ata_wait_after_reset() Paul Mundt
2007-05-29 1:31 ` Jeff Garzik
2007-05-29 7:33 ` Tejun Heo
[not found] <fa.M0o+I253i7tt/LF97sml0AM+Gec@ifi.uio.no>
[not found] ` <fa.j/gDhS9FZwWkX/stLhREkTHNbFs@ifi.uio.no>
[not found] ` <fa.EalQUMJMBHX/KTGV2QFQLG6tYus@ifi.uio.no>
[not found] ` <fa.Zh3ttZJ9A5tObhEjMLSALUpxCuQ@ifi.uio.no>
[not found] ` <fa.tQ9LHpM0TOYAYEug36HHMvEVOO0@ifi.uio.no>
[not found] ` <fa.jSmqI/kJPff3zaVtC404yNL5/Qk@ifi.uio.no>
[not found] ` <4650891F.80301@shaw.ca>
2007-05-20 18:53 ` sd_resume redundant? [was: [PATCH] libata: implement ata_wait_after_reset()] Randy Dunlap
2007-05-20 22:25 ` Robert Hancock
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=465082BF.2070306@gmail.com \
--to=htejun@gmail.com \
--cc=garyhade@us.ibm.com \
--cc=indan@nul.nu \
--cc=jeff@garzik.org \
--cc=lethal@linux-sh.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).