This subreddit is for any question pertaining to Linux from beginner to advanced. For general Linux news and info, see /r/linux.

If you find a solution to your problem by other means, please take your time to write down the steps you used to solve your problem in the original post. You can potentially help others having the same problem!

I have inherited a spare Crucal V4 128GB SSD. I've experienced abysmal write performance on both OSs that I've thrown at it: Windows 7 + Linux MInt 14. I'm aware that this drive has slow write performance due to its controller, but is there any way to salvage or re-purpose this? As is, it's slower than an old IDE drive in terms of write performance.

Yes, I repartitioned did a mkfs.ext3 on it (which took way too long to complete), and the copy performance was terrible, so I then unmounted and tried a "dd if=/dev/zero of=/dev/sdX bs=512000". The speed was <20Mb/s but I don't remember the exact figure now.

First, you need to understand why TRIM is necessary in the first place.

Most OSes write data in 512 B sectors by default, and SSDs also typically tell OSes that such writes are possible. However, they're really not--SSDs actually write much larger sections of data at a time. In order to write to, say, address #1234, maybe all addresses #1230 through #1237 have to be read into the SSD's memory, then rewritten with address #1234 changed to the new value. This is, obviously, rather inefficient. If the SSD knows that none of that data is actually present (i.e. that data only exists at #1234 rather than any other address), it doesn't need to read the existing data first--it can just write 0s to it.

TRIM is an ATA command. An operating system uses it to tell a drive, "Hey, block #1234 is empty now." Thus, an OS can tell an SSD what addresses are supposed to be empty anyway, so the SSD doesn't have to read the data, then rewrite it.

What #2 above does is it writes data to the entire disk, then deletes it, causing the OS to send a TRIM command to the drive telling it about all the free space on the disk. Simple but effective.

Thanks for that. Just to make sure I'm on the same page, would this get her done?
1. Connect drive as a secondary drive to another PC.
2. Partition as desired.
3. Format each partition to ext4, and run a "dd" to fill each drive with the maximum size dummy file.
4. Delete the dummy file.
5. Re-insert the drive in original PC, boot off install media, and install OS while choosing not to format.

For what it's worth, when I finally got around to trying the V4 SSD on another box, it worked fantastically out of the box this time. Same install OS, same partitioning scheme. I guess the motherboard SATA controller or BIOS settings was key somehow...