From: Tejun Heo <htejun@gmail.com>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: alan@lxorguk.ukuu.org.uk, lkml@rtr.ca, forrest.zhao@intel.com,
linux-ide@vger.kernel.org
Subject: Re: [PATCH 03/12] libata-pmp: implement ATA_LFLAG_DISABLED
Date: Mon, 24 Jul 2006 15:52:42 +0900 [thread overview]
Message-ID: <44C46E3A.8070109@gmail.com> (raw)
In-Reply-To: <44BE97B0.9030809@pobox.com>
Jeff Garzik wrote:
> Tejun Heo wrote:
>> Implement ATA_LFLAG_DISABLED. The flag indicates the link is
>> disabled due to EH recovery failure. While a link is disabled, no
>> EH action is taken on the link and suspend/resume become noop too.
>> For host port, this doesn't introduce any behavior change other
>> than not invoking hotplug sequence on failed ports on resume and
>> this behavior change is intended.
>
> why?
>
> libata should notice new devices, when resuming.
It will do so on links which are operating normally. ATA_LFLAG_DISABLED
is set only when libata EH fails to recover the link (link hardreset
failure) which takes quite some retries and is more severe than device
recovery failure. This is the red marking screaming "stay away from
this link!". For example, let's say a notebook has a broken SATA link
to drive bay and EH failed it. Without the above behavior, libata EH
will try to recover the link on every resume which is both inconvenient
and incorrect.
The thing is that resume from sleep is a link-resuming operation but not
a hotplug event, just as PMP slave link resets following host link reset
are link-resuming but not hotplugging. IOW, resume doesn't positively
indicate that the attached device could have been changed.
libata EH doesn't need hotplug events to do hotplugging. If it detects
such events during EH, it will perform the needed operations, but there
are things which are appropriate only when hotplug event is positively
indicated like detaching disabled (failed) devices or re-enabling failed
links.
--
tejun
next prev parent reply other threads:[~2006-07-24 9:56 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-08 5:58 [PATCHSET 3/3] implement PMP support, take 2 Tejun Heo
2006-07-08 5:58 ` [PATCH 03/12] libata-pmp: implement ATA_LFLAG_DISABLED Tejun Heo
2006-07-19 20:36 ` Jeff Garzik
2006-07-24 6:52 ` Tejun Heo [this message]
2006-07-08 5:58 ` [PATCH 02/12] libata-pmp: update ata_eh_reset() for PMP Tejun Heo
2006-07-08 5:58 ` [PATCH 01/12] libata-pmp: add PMP related constants, fields, ops and update helpers Tejun Heo
2006-07-19 20:34 ` Jeff Garzik
2006-07-08 5:58 ` [PATCH 04/12] libata-pmp: implement Port Multiplier support Tejun Heo
2006-07-08 5:58 ` [PATCH 06/12] sata_sil24: rename PMP related constants Tejun Heo
2006-07-08 5:58 ` [PATCH 10/12] sata_sil24: separate out sil24_do_softreset() Tejun Heo
2006-07-08 5:58 ` [PATCH 08/12] sata_sil24: replace sil24_update_tf() with sil24_read_tf() Tejun Heo
2006-07-08 5:58 ` [PATCH 09/12] sata_sil24: separate out sil24_exec_polled_cmd() Tejun Heo
2006-07-08 5:58 ` [PATCH 07/12] sata_sil24: add PMP related constants Tejun Heo
2006-07-08 5:58 ` [PATCH 05/12] libata-pmp: hook PMP support and enable it Tejun Heo
2006-07-08 5:58 ` [PATCH 11/12] sata_sil24: implement PMP support Tejun Heo
2006-07-08 5:58 ` [PATCH 12/12] sata_sil24: implement PORT_RST Tejun Heo
2006-07-19 20:37 ` [PATCHSET 3/3] implement PMP support, take 2 Jeff Garzik
2006-07-24 6:56 ` Tejun Heo
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=44C46E3A.8070109@gmail.com \
--to=htejun@gmail.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=forrest.zhao@intel.com \
--cc=jgarzik@pobox.com \
--cc=linux-ide@vger.kernel.org \
--cc=lkml@rtr.ca \
/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).