Crucial M4 SSD (M4-CT064M4SSD2) firmware update on Linux/Ubuntu

A few days ago I thought the SSD dream had come to an end: my Ubuntu desktop was locking up after about an hour, with I/O errors on the console referring to sda – the device file for my SSD. Fortunately a quick search reveals that failing after an hour is normal for the Crucial M4 and there is a firmware update which fixes the problem. Choose the “Manual Boot File for Windows and Mac®” and you should download an archive which contains the .ISO for a bootable CD.

Check what revision of firmware you have currently installed on your M4 by typing something like:

sudo lshw | grep -A9 M4

(lshw is ‘list hardware’ or something like that, “grep M4” will search for ‘M4’ in the output, the -A9 switch says “show 9 lines after the M4”). Look for the “version” line. Mine was originally “0009”.

You can apply this fix from your PC with apparently broken SSD, but bear in mind that the bug requires a power cycle / ‘cold boot’ (switch off and on) for the SSD to give you another hour of normal operation. On my PC the SSD simply disappeared from the BIOS on a warm restart (no switch off) after the problem manifested itself.

Crucial suggests you make a bootable CD-ROM to apply the firmware update but I have no drives for removable spinning media, regarding them as anachronisms. I tried using dd to transfer the bootable .ISO image, but that just didn’t seem to work properly. What worked for me was to install UNetbootin (that’s an APT: link, your Ubuntu desktop should just install it automatically on clicking it).

Start UNetbootin, plug in a USB drive, select the ‘Diskimage’ option, locate the Crucial firmware image .ISO you downloaded and click OK. UNetbootin will make the USB drive bootable so that the Crucial firmware installer runs at boot. Once the USB drive is prepared, UNetbootin offers a helpful ‘Reboot Now’ button. Click it. On restart use your BIOS to select the USB drive as the boot device.

When my PC booted from the UNetbootin-prepared USB drive, I got 3 options “Default”, “default” and “alternate”. The first “Default” did nothing – the second “default” brought up the Crucial firmware installer. The installer itself is not very communicative, so be careful not to panic early and press reset on your apparently ‘hung’ PC (I destroyed a perfectly good laptop – which wasn’t even mine – once doing that). The firmware update takes 10-20 seconds and you should see the messages:

Updating firmware...
Current revision is: 040H (or whatever firmware you downloaded)
Resetting Drive...
Drive Reset completed successfully.
Finished
A:\>

At this point you can ‘3 finger salute’ or your preferred reboot method. That’s it – your Crucial M4 SSD problem should have disappeared!

One thought on “Crucial M4 SSD (M4-CT064M4SSD2) firmware update on Linux/Ubuntu

  1. Kamil Slowikowski

    Thank you for writing this up! I had exactly the same problem, and it took a while to figure out what was wrong.

    In the end, I found error messages related to disk I/O errors by pressing CTRL-ALT-F1 during a moment when the system was starting to crash. I attempted to login at the prompt and eventually the I/O errors started flooding the screen.


    sudo hdparm -I /dev/sda

    ATA device, with non-removable media
    Model Number: M4-CT128M4SSD2
    Serial Number: 00000000115209007783
    Firmware Revision: 070H
    Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0

    Before updating the firmware, the “Firmware Revision” was “0009” and all programs (and eventually the whole system) were crashing unpredictably.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *