Before reading this long question, please note that it is mostly outdated in light of the more recent developments reflected by the top answer.

Unfortunately Apple has decided to create kext signing in Yosemite that creates issues for SSDs that require Trim support for optimal function and longevity. Whether this is vendor lock in or not, it's made upgrading a headache. If you bought a SSD that needs trim support (at time of writing, all SSDs benefit) such as the Samsung 840 Evo, there are many reported issues when performing PRAM reset and potential future system update conflicts in addition to the current security tradeoffs (see below). Trim Enabler author says using Trim Enabler by turning off kext signing is cracking a walnut with a sledgehammer.

I'm hoping for strategy / options to work with SSDs that recommend or require Trim support. So far, because of this article, I'm considering a SSD with Sandforce or equivalent active garbage collection. I'm also considering turning on Trim Enabler periodically, then off and reenabling kext-signing to avoid issues with until (if) Apple restores TRIM support to hardware and software devs.

Please detail working hardware/software configurations and strategy/schedule as well as outcomes.

tl;dr --

Some background:

3rd party SSDs for the most part don't have trim support in Yosemite without kext signing security tradeoffs. Apple changed kext signing in OS X 10.10 such that kext singing must be disabled to use applications like Trim Enabler for trim support. So choices using Yosemite are, reduced security and potential system update issues; or, a SSD that doesn't require Trim support.

Yosemite kills third-party SSD support. This is not relevant if you're using an Apple installed SSD or SSD that doesn't require 3rd party trim support for optimal function. So, if you're using a DIY SSD, Trim support is tricky in Yosemite because of recent modifications to kext security management that affects Trim support. More about Trim Enabler for Mac:

About Trim in Yosemite In OS X 10.10 (Yosemite),

Apple has introduced a new security requirement called kext signing. (A kext is a kernel extension, or a driver, in Mac OS X)

Kext signing basically works by checking if all the drivers in the system are unaltered by a third party, or approved by Apple. If they have been modified, Yosemite will no longer load the driver. This is a means of enforcing security, but also a way for Apple to control what hardware that third party developers can release OS X support for.

Since Trim Enabler works by unlocking the Trim driver for 3rd party SSD’s, this security setting prevents Trim Enabler to enable Trim on Yosemite.

To continue to use Trim Enabler and continue to get Trim for your third party SSD, you first need to disable the kext signing security setting.

It is important to note that the kext-signing setting is global, if you disable it you should be careful to only install system drivers from sources that you trust.

up vote 7 down vote accepted

See my answer here:

Since the release of 10.10.4, Apple now provides a new tool called trimforce, allowing users to activate TRIM also on unsupported disks. So now you can do:

sudo trimforce enable

It is true that disabling the kext signing is global, but before Yosemite, it did not exist at all, so compared to a pre-10.10 setup you do not lose security. The only thing you need to do is make sure every driver you install can be trusted (and how often does one install drivers).

I would simply use TRIM enabler, it has not created problems for me. For the unlikely event that I should be met by the grey stop sign at boot, I printed out the instructions from Cindori to disable the signing again and carry it in my laptop bag.

  • How does one know whether a kext driver is being installed, or which are already? – thepen Jan 4 '15 at 5:26
  • @thepen You're right, it's hard to say, but since it always involves admin privileges (I suppose), you're password will be required. Certainly, when installing an app, it could prompt you to enter it and then install stuff you haven't asked for, so you need to make sure you're installing from trustworthy sources. How sure one can be is another question. – oarfish Jan 4 '15 at 13:48
  • if anyone cares to share insight, question about kext signing security alerts posted here. – thepen Jan 21 '15 at 22:31

I had this problem and decided to go with a SSD having built in garbage collection (namely a Crucial MX100 for this reason).

AFAIK, this is the only solution for those not willing to disable Kext signing but willing to keep the SSD in pristine condition.

EDIT: According to French site macplus.net, a new Yosemite friendly TRIM solution by TRIM Enabler's creator is in the making and should see a beta release in early 2015.

  • Thanks. Here's what I discovered so far about TRIM vs garbage collection. I may choose a similar drive if no one has a way to transitionally periodically utilize TRIM support. – thepen Dec 22 '14 at 6:57
  • Apparently the write amplification prevented by TRIM will remain until Apple resorts 3rd party TRIM support. This will slow the SSD over time and increase wear, but fortunately newer SSDs are quite durable. – thepen Jan 2 '15 at 1:24
  • SSD Garbage is not a replacement for Trim support, though. Without Trim support, the SSD may still wear out faster. But @thepen may be right, too - newer SSDs may be more durable, making this less of an issue. Hopefully. – Thomas Tempelmann Jan 7 '15 at 20:25
  • hey @Samric, just saw this test of GC vs. TRIM. haven't tried it myself, but appears GC without TRIM wasn't sufficient to sustain speeds when the drive was full. – thepen Jan 8 '15 at 3:48
  • Quite interesting. I hope a solution to turn TRIM on on Yosemite surfaces in the near future then (c.f. edit on my answer) – Samric Jan 8 '15 at 4:12

@carfish: so you buy a car without ABS braking, because it is safe because before modern cars there was no ABS??

@samric: the french trick is a hack: they just change the name inside the SSD into Apple name. Obviously that will only be a shortlived "solution" because it is illegal.

In general: Trim for non-apple SSDs is not wise: there is a (small) chance that it causes an issue on the file level on the SSD (irrepairable); and also the modern SSDs have a very good GarbageCollection system: as long as there is enough free space it is as good as the Trim induced GarbageCollection. If you are afraid that GC has not enough space, just format the SSD to 10% smaller than the total space and leave that 10% unformatted. Trim is not worth the disrobing of a global level of security. LexS

  • 2
    thanks for the answer. is there some documentation for "short lived" and "illegal"? – thepen Jan 21 '15 at 22:39

Personally I have a samsung pro ssd and trim enabler app didn't help me on enabling the trim support. Chameleon ssd optimizer is the answer and is free.

I tried 2 times: the first time didn't work. Make sure before it asks you to restart the trim is enabled. Cancel the restart and wait for the chameleon to disable the trim lock then restart.

  • Thanks @Julian. I assume Chameleon requires kext signing to be disabled for trim support to work, correct? – thepen Mar 10 '15 at 20:34

https://github.com/Temptin/Documents/blob/master/Yosemite_Patchless_TRIM.md

Brings forward the method of enabling TRIM using 'trimforce' in the command line. It does EXACTLY what Apple's official TRIM enabler will do with 10.0.4, without disabling Kext. Does Trim enabler give anything more for $10? I might be missing something.

  • Thx @Timothy Morris-- Have you tried this? The Github link has only been up for a few days as of this writing, with no comments. – thepen Jun 24 '15 at 3:32

Wondering if anyone has tried this: Run your 3rd party SSD on Yosemite with kext enabled and no TRIM and once a week--or as needed-- boot from a bootable Mavericks external and run a TRIM Enabler over night. In the morning, shutdown, remove the bootable external drive and restart with Yosemite.

  • TE only works on the startup drive. – thepen Mar 23 '15 at 20:24

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.