UPDATE: April 28, 2021
With the release of macOS 11.3 yesterday, Apple has now fixed the bug that prevented the SoftRAID driver from loading on M1 Macs. After updating to this new macOS release, the SoftRAID version 6 driver will load correctly, and you will be able to access your SoftRAID volumes.
As many of you know, we released SoftRAID version 6 last week. This means you no longer have to use a beta version of SoftRAID if you have upgraded to macOS 11 (Big Sur). We are really proud of this release. We have been shipping for just under a week, and users are upgrading to this new version and telling us how much they appreciate it.
But what’s the status of SoftRAID and the M1 Macs? Over two months ago, I first wrote about the bug Apple introduced into macOS with the release of macOS 11.2. This bug prevented the SoftRAID driver from loading on M1 Macs.
Here’s the simple explanation
With the introduction of the macOS 11 on the M1 Macs, macOS requires storage drivers to call a special routine just before sending any block of memory to the disks when reading and writing. This routine has been in macOS forever but has never been required before. Starting with the M1 Macs, if a driver doesn’t call this routine, the first attempt to read or write data will cause a kernel panic. In November, following the suggestion of a helpful Apple engineer, we added this routine to the SoftRAID driver. With this change, SoftRAID volumes worked great on M1 Macs running macOS 11.1.
So what happened with macOS 11.2?
It is painful to say, but Apple removed the very routine they require drivers to call on M1 Macs. Starting with macOS 11.2, you can no longer load a driver on an M1 Mac that calls this special routine because the special routine no longer exists. If I remove calls to this routine, the driver will load just fine. It’s just that the M1 Mac will kernel panic on the first read or write to the disk because the driver didn’t call the required routine, the one which no longer exists. This is the type of Catch-22 that would make Joseph Heller proud.
I discovered this bug a few hours after macOS 11.2 shipped. Apple has since restored this routine to macOS starting in version 11.3, and we have confirmed that it works correctly by testing the beta releases. I have been waiting for Apple to release this new version of macOS for over a month. Each week, I expect Apple to ship macOS 11.3, and instead, I just see yet another minor release to macOS 11.2. I feel it must be soon now, but I have no inside knowledge.
If you need to use SoftRAID volumes on your M1 Mac and are stuck on macOS 11.2, you can upgrade to the public beta of macOS 11.3 and SoftRAID 6 to give you the same reliable storage that you have come to expect from OWC. If you are still running macOS 11.1 on your M1 Macs, I suggest you wait to upgrade until macOS 11.3 is released before upgrading.
And now it is time for me to go back to writing code….