From 12d2dcdb7176cfe71489954a93e6028ffef259c1 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Sat, 24 Oct 2009 00:38:42 +0200 Subject: Ignore attributes 5 and 190 on some Apple SSD http://bugs.freedesktop.org/show_bug.cgi?id=24700 --- atasmart.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/atasmart.c b/atasmart.c index 3ec6c19..176b34f 100644 --- a/atasmart.c +++ b/atasmart.c @@ -1349,6 +1349,7 @@ typedef enum SkSmartQuirk { SK_SMART_QUIRK_9_UNKNOWN = 0x0400, SK_SMART_QUIRK_197_UNKNOWN = 0x0800, SK_SMART_QUIRK_198_UNKNOWN = 0x1000, + SK_SMART_QUIRK_190_UNKNOWN = 0x2000 } SkSmartQuirk; /* %STRINGPOOLSTART% */ @@ -1366,6 +1367,7 @@ static const char *quirk_name[] = { "9_UNKNOWN", "197_UNKNOWN", "198_UNKNOWN", + "190_UNKNOWN", NULL }; /* %STRINGPOOLSTOP% */ @@ -1510,6 +1512,13 @@ static const SkSmartQuirkDatabase quirk_database[] = { { "^MBZOC60P$", SK_SMART_QUIRK_5_UNKNOWN }, { + + /*** Apple SSD (?) http://bugs.freedesktop.org/show_bug.cgi?id=24700 */ + "^MCCOE64GEMPP$", + "^2.9.09$", + SK_SMART_QUIRK_5_UNKNOWN| + SK_SMART_QUIRK_190_UNKNOWN + }, { NULL, NULL, 0 @@ -1623,6 +1632,12 @@ static const SkSmartAttributeInfo *lookup_attribute(SkDisk *d, uint8_t id) { break; + case 190: + if (quirk & SK_SMART_QUIRK_190_UNKNOWN) + return NULL; + + break; + case 192: /* %STRINGPOOLSTART% */ if (quirk & SK_SMART_QUIRK_192_EMERGENCYRETRACTCYCLECT) { -- cgit