SATA SSDs and PCIe SSDs use the same driver(s). That's the reason why TRIM works for SATA and PCIe connections.Thanks... I thought it did work on PCIe, but was not sure so did not want to comment.
SATA SSDs and PCIe SSDs use the same driver(s). That's the reason why TRIM works for SATA and PCIe connections.Thanks... I thought it did work on PCIe, but was not sure so did not want to comment.
See this thread,,,,The current command does not work with the newest update to 10.9.4. Damn... And I forgot to make a copy before applying the command...
Trim Enabler works, perl script, etc. don't anymore.
The current command does not work with the newest update to 10.9.4. Damn... And I forgot to make a copy before applying the command...
The only reason why Trim Enabler still works is that it just copies a modified IOAHCIBlockStorage file that originally dates back to Snow Leopard (10.6). This way, you introduce some bugs. I'd rather stick without TRIM than to use Trim Enabler. Just my 2 cents.![]()
Just ran the TRIM Enabler program, and it worked.
So, with all that out of the way, here is the hex dump of the relevant section of the new extension for those wanting to go the script route and need to adjust their scripts. Old pattern was "Rotational\0APPLE SSD\0T". Now, note lots of other stuff between "Rotational" and "APPLE SSD".
sudo perl -pi -e 's|\x00APPLE SSD\x00Time To|\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Time To|s' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
...the following patch does the trick if anyone wants to use perl.
The driver compares only the string, and works without problems, if the string length (a C-String) is zero!?-----interesting info-----
The author of "Chameleon" has a 10.9.4 version available here.
So, with all that out of the way, here is the hex dump of the relevant section of the new extension for those wanting to go the script route and need to adjust their scripts. Old pattern was "Rotational\0APPLE SSD\0T". Now, note lots of other stuff between "Rotational" and "APPLE SSD".
Code:sudo perl -pi -e 's|\x00APPLE SSD\x00Time To|\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Time To|s' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
sudo perl -pi -e 's|(^\x00{1,20})[^\x00]{9}(\x00{1,20}\x54)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
Thanks NoBoMac
Based on that I confirmed that the following patch does the trick if anyone wants to use perl.
Code:sudo perl -pi -e 's|\x00APPLE SSD\x00Time To|\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Time To|s' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
The driver compares only the string, and works without problems, if the string length (a C-String) is zero!?
Thanks. I prefer a shell script. Somehow I feel safer with it because I know what it is doing..
Someone pointed me toward this: https://gist.github.com/return1/4058659
Code:sudo perl -pi -e 's|(^\x00{1,20})[^\x00]{9}(\x00{1,20}\x54)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
The only reason why Trim Enabler still works is that it just copies a modified IOAHCIBlockStorage file that originally dates back to Snow Leopard (10.6). This way, you introduce some bugs. I'd rather stick without TRIM than to use Trim Enabler. Just my 2 cents.![]()
Trim Enabler has made quite a journey since then.
The above commands weren't working for me on 10.9.4. Running this series (found here https://gist.github.com/clarencesong/3768688), however, did:
sudo cp /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage-backup
sudo perl -pi -e 's|(^\x00{1,20})[^\x00]{9}(\x00{1,20}\x54)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage
sudo kextcache -system-prelinked-kernel
sudo kextcache -system-caches
sudo touch /System/Library/Extensions/
Thanks so much for the pictures. I know this is an old thread but some of us are still happily using these old systems - mbp2.2 in my case.So, with all that out of the way, here is the hex dump of the relevant section of the new extension for those wanting to go the script route and need to adjust their scripts. Old pattern was "Rotational\0APPLE SSD\0T". Now, note lots of other stuff between "Rotational" and "APPLE SSD".
Before:
![]()
After
![]()