Disable NCQ usage for Crucial M225 model range of SSDs. Signed-off-by: Vishal Rao <vishalrao@xxxxxxxxx> Tested-by: Vishal Rao <vishalrao@xxxxxxxxx> Cc: stable@xxxxxxxxxx --- Should work with 64, 128 (tested) and 256 GB capacities with any firmware versions in drivers/ata/libata-core.c because of ATA errors in dmesg, hangs and filesystem corruption. The diff is against linux kernel 2.6.33 rc5 though also meant for 2.6.32 stable series due to multiple distros' proposed long term support. I've tested on my PC with my Crucial M225 model 128 GB SSD and it works without the need to specify kernel boot option " libata.force=noncq ". --- linux-source-2.6.33rc5/drivers/ata/libata-core.c.orig 2010-01-26 08:35:54.117306573 +0530 +++ linux-source-2.6.33rc5/drivers/ata/libata-core.c 2010-01-26 08:35:13.047306938 +0530 @@ -4274,6 +4274,9 @@ static const struct ata_blacklist_entry { "ST380817AS", "3.42", ATA_HORKAGE_NONCQ }, { "ST3160023AS", "3.42", ATA_HORKAGE_NONCQ }, { "OCZ CORE_SSD", "02.10104", ATA_HORKAGE_NONCQ }, + { "CRUCIAL_CT64M225", NULL, ATA_HORKAGE_NONCQ }, + { "CRUCIAL_CT128M225", NULL, ATA_HORKAGE_NONCQ }, + { "CRUCIAL_CT256M225", NULL, ATA_HORKAGE_NONCQ }, /* Seagate NCQ + FLUSH CACHE firmware bug */ { "ST31500341AS", "SD15", ATA_HORKAGE_NONCQ | -- "Thou shalt not follow the null pointer for at its end madness and chaos lie." -- 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