The latest beta release of SoftRAID 6 now supports the M1 Macs. After several weeks of investigating a kernel panic bug we were seeing in the SofftRAID driver, we reached out to Apple’s kernel engineers for help. This kernel panic happened only with RAID levels that used stripes (RAID 0, 4, 5, and 1+0), when reads or writes to those volumes accessed more than one disk, and only on M1 Macs.
Apple engineers were amazingly helpful and, within a couple of days, gave us the suggestion which fixed the bug. It is wonderful to work so closely with Apple engineers! We often tell them about problems in the macOS kernel, and they will make suggestions about how we can improve the SoftRAID driver. It’s truly a win-win for everyone.
As is so often the case, their suggestion involved adding a single line of code to the read and write routines in the SoftRAID M1/ARM driver. This line of code is a call to a function built into the operating system. It is now required on ARM-based Macs (like all M1 Macs are). This call has never been needed on Intel Macs.
Once again, this shows that although Apple has done an incredible job making the M1 Macs look “just like a Mac,” there are quite fundamental differences between the underlying hardware for Intel and ARM-based Macs.
Thank you so much to the Apple engineer who helped us out. I wish I knew your name so I could personally thank you!