Re: [patch 067/104] libata: improve phantom device detection

From: Tejun Heo
Date: Wed Dec 03 2008 - 23:22:51 EST


> 2.6.27-stable review patch. If anyone has any objections, please let us know.
>
> ------------------
> From: Tejun Heo <tj@xxxxxxxxxx>
>
> commit 6a6b97d360702b98c02c7fca4c4e088dcf3a2985 upstream.
>
> Currently libata uses four methods to detect device presence.
>
> 1. PHY status if available.
> 2. TF register R/W test (only promotes presence, never demotes)
> 3. device signature after reset
> 4. IDENTIFY failure detection in SFF state machine
>
> Combination of the above works well in most cases but recently there
> have been a few reports where a phantom device causes unnecessary
> delay during probe. In both cases, PHY status wasn't available. In
> one case, it passed #2 and #3 and failed IDENTIFY with ATA_ERR which
> didn't qualify as #4. The other failed #2 but as it passed #3 and #4,
> it still caused failure.
>
> In both cases, phantom device reported diagnostic failure, so these
> cases can be safely worked around by considering any !ATA_DRQ IDENTIFY
> failure as NODEV_HINT if diagnostic failure is set.
>
> Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
> Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxxx>
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>

Alan thinks this patch could cause regression. Given that we're
nearing the end of 2.6.28-rc cycles, I don't think it's critical to
include this into 2.6.27-stable or at least it can wait a bit more.

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/