libATA blacklist Crucial/Micron SSD M225 models due to NCQ errors?

From: Vishal Rao
Date: Fri Jan 22 2010 - 00:17:46 EST


Hello,

(please CC me in any replies as I'm not subscribed to the list).

I wonder if it's appropriate to blacklist the Crucial.com M225 family
of solid state disks?

Could the following line be added to drivers/ata/libata-core.c around
line 4276 (2.6.33-rc4) right alongside the
"OCZ CORE_SSD" blacklist entry for ATA_HORKAGE_NONCQ ?

[code]
{ "CRUCIAL_CT128M225", NULL, ATA_HORKAGE_NONCQ },
[/code]

I'm assuming the first string param matches with the ID I see in the
logs, the second param is for firmware ID and NULL means it will match
all?
This is just for the 128 GB model and there are also 64 and 256 GB
models - I hope Crucial can revise their IDs to be variant agnostic
and just
return something like OCZ does like say "CRUCIAL_M225".

I have a 128 GB model CT128M225 and am running kernel 2.6.32 series
that comes with Ubuntu Linux 10.04 Alpha 2.

There are regular kernel dmesg error/warning messages related to
"ata1" (my SSD) including a "failed command READ FPDMA QUEUED".
See http://pastebin.ubuntu.com/347122/

After some STFW-ing, I realised it's related to NCQ which the disk
firmware (v1916) probably doesn't support/implement well.

Solution/workaround for me is to add " libata.force=noncq " to the
kernel boot options so I am not too worried although I though if this
goes into the kernel (and backported to .32 series which a lot of
vendors plan to use or long term distro support) it would
save a lot of headache for regular users who might dump Linux distros
for other systems.

(please CC me in any replies as I'm not subscribed to the list).

Thanks,
Vishal

--
"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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/