summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2008-11-27 13:36:48 +0900
committerGreg Kroah-Hartman <gregkh@suse.de>2008-12-05 10:55:22 -0800
commiteeb32947c54f5e42cd5798544ce1577b9723782d (patch)
treed0b46533a574ad7f2bd6c6615acc683c60e8d863 /include
parent9be1922d6ec5c913626c3fce8bcb1485a19ea519 (diff)
downloadlwn-eeb32947c54f5e42cd5798544ce1577b9723782d.tar.gz
lwn-eeb32947c54f5e42cd5798544ce1577b9723782d.zip
libata: blacklist Seagate drives which time out FLUSH_CACHE when used with NCQ
commit ac70a964b0e22a95af3628c344815857a01461b7 upstream. Some recent Seagate harddrives have firmware bug which causes FLUSH CACHE to timeout under certain circumstances if NCQ is being used. This can be worked around by disabling NCQ and fixed by updating the firmware. Implement ATA_HORKAGE_FIRMWARE_UPDATE and blacklist these devices. The wiki page has been updated to contain information on this issue. http://ata.wiki.kernel.org/index.php/Known_issues Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include')
-rw-r--r--include/linux/libata.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 225bfc5bd9ec..25062ac24f05 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -364,6 +364,7 @@ enum {
ATA_HORKAGE_IPM = (1 << 7), /* Link PM problems */
ATA_HORKAGE_IVB = (1 << 8), /* cbl det validity bit bugs */
ATA_HORKAGE_STUCK_ERR = (1 << 9), /* stuck ERR on next PACKET */
+ ATA_HORKAGE_FIRMWARE_WARN = (1 << 12), /* firwmare update warning */
/* DMA mask for user DMA control: User visible values; DO NOT
renumber */