linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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



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