Re: [PATCH] ide: Fix ata_id_has_dword_io to return DWORD I/O support properly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

Jeff Garzik wrote:

This patch fixes ata_id_has_dword_io to return 1 (supported) if
the drive is compliant to ATA2 or newer and evaluates the config
word for older drives.

Signed-off-by: Mario Schwalbe <schwalbe@xxxxxxxxxxxxxxxxx>

diff --git a/include/linux/ata.h b/include/linux/ata.h
index a53318b..d0d6a9c 100644
--- a/include/linux/ata.h
+++ b/include/linux/ata.h
@@ -700,12 +700,12 @@ static inline int ata_id_has_tpm(const u16 *id)

 static inline int ata_id_has_dword_io(const u16 *id)
 {
-    /* ATA 8 reuses this flag for "trusted" computing */
-    if (ata_id_major_version(id) > 7)
-        return 0;
-    if (id[ATA_ID_DWORD_IO] & (1 << 0))
-        return 1;
-    return 0;
+    /* This flag is defined up to ATA1 and deprecated since then
+       (ATA 8 reuses this flag for "trusted" computing). */
+    if (ata_id_major_version(id) <= 1)
+        return (id[ATA_ID_DWORD_IO] & (1 << 0)) != 0;
+    /* later revision drives support DWORD I/O just fine */
+    return 1;

This seems like a risky assumption...

Not at all, I think. It's total mystery how "DWORD I/O" could've been even (not) supported by a *drive* at all. Support of "DWORD I/O" is a property of the PATA controller. Frankly speaking, I don't think that this function is at all useful...

    Jeff

MBR, Sergei
--
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

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux