Alan wrote:
On Sun, 3 Dec 2006 19:30:32 +0900
Tejun Heo <htejun@xxxxxxxxx> wrote:
libata switched to IRQ-driven IDENTIFY when IRQ-driven PIO was
introduced. This has caused a lot of problems including device
misdetection and phantom device.
ATA_FLAG_DETECT_POLLING was added recently to selectively use polling
IDENTIFY on problemetic drivers but many controllers and devices are
affected by this problem and trying to adding ATA_FLAG_DETECT_POLLING
for each such case is diffcult and not very rewarding.
This patch makes libata always use polling IDENTIFY. This is
consistent with libata's original behavior and drivers/ide's behavior.
Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
Acked-by: Alan Cox <alan@xxxxxxxxxx>
One possibility however would be to invert the flag we have now so we can
try turning -on- IRQ polling on some devices in future and maybe figure
it out that way around ?
Agreed, though it is low priority.
You'll note that Tejun's change only applies to the [large] set of
drivers using libata-sff, rather than all drivers. Modern, unbridged
SATA controllers (ahci, sata_sil24) continue to do their own interrupts
based on received packets (FIS's) through the use of the higher level
libata hooks.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html