Page 2 of 2

Re: 10.9 support survey

PostPosted: Fri Mar 12, 2021 2:41 am
by lundman
The 2 missing symbols, (in fact, all of them), are being addressed in macOS_pure branch. We can build for 10.9 still, when release is out - need just ask.

Re: 10.9 support survey

PostPosted: Fri Mar 12, 2021 2:49 am
by RJVB
lundman wrote:The 2 missing symbols, (in fact, all of them), are being addressed in macOS_pure branch. We can build for 10.9 still, when release is out - need just ask.



Being addressed or have been addressed? Then again, maybe we should wait until a 2.0.x release just to be on the safe side? ;)

Re: 10.9 support survey

PostPosted: Sun Mar 28, 2021 6:03 pm
by Wowfunhappy
lundman wrote:The 2 missing symbols, (in fact, all of them), are being addressed in macOS_pure branch. We can build for 10.9 still, when release is out - need just ask.

Oh, that would be great! :D

If you have a free moment, I wouldn't mind getting a release of 1.9.4 for Mavericks as well. If I compile it myself, it won't be code signed, and on Mavericks, unsigned kexts can only be loaded from /System/Library/Extensions (as opposed to /Library/Extensions). This isn't really a problem, but I do try to avoid messing with the System folder.

Re: 10.9 support survey

PostPosted: Mon Mar 29, 2021 2:21 am
by RJVB
Wowfunhappy wrote:If I compile it myself, it won't be code signed, and on Mavericks, unsigned kexts can only be loaded from /System/Library/Extensions (as opposed to /Library/Extensions). This isn't really a problem, but I do try to avoid messing with the System folder.


On 10.9? I build 1.9.4 myself too, and even install the kexts into /opt/local/Library/Extensions - unsigned. The only drawback is that I have to OK loading them once after every reboot, which is a rather rare event. And I probably couldn't boot off ZFS that way, but to be honest I wouldn't dream of doing that. Even my Linux rigs use ext4 /boot partitions.

I seem to recall being explained here that later versions would only allow signed kexts in the system locations, but I can have that mixed up.

Re: 10.9 support survey

PostPosted: Mon Mar 29, 2021 9:27 am
by Wowfunhappy
RJVB wrote:On 10.9? I build 1.9.4 myself too, and even install the kexts into /opt/local/Library/Extensions - unsigned. The only drawback is that I have to OK loading them once after every reboot, which is a rather rare event. And I probably couldn't boot off ZFS that way, but to be honest I wouldn't dream of doing that. Even my Linux rigs use ext4 /boot partitions.

I seem to recall being explained here that later versions would only allow signed kexts in the system locations, but I can have that mixed up.


For automatically loaded kexts, it goes like this:
  • Mac OS X 10.8- can load unsigned kexts from anywhere.
  • Mac OS X 10.9 can load unsigned kexts from /System/Library/Extensions/, but, paradoxically, not from /Library/Extensions/.
  • Mac OS X 10.10 can load unsigned kexts from anywhere if the boot argument `kext-dev-mode=1` is set.
  • Mac OS X 10.11+ can load unsigned kexts from anywhere if System Integrity Protection is disabled.

So, Mavericks is the odd one out, which simply will not load unsigned kexts from /Library/Extensions/, which is also where third party extensions like OpenZFS are rightly supposed to live. I don't know why Apple adopted a policy which effectively encourages modifying the System folder, but presumably they saw it as a temporary stopgap.

I guess I could put kexts elsewhere and load them manually, but I'd prefer to keep them where they're supposed to live, if at all possible.

Re: 10.9 support survey

PostPosted: Mon Mar 29, 2021 10:02 am
by RJVB
Wowfunhappy wrote:Edit: Oh, I get it, you're manually loading the kexts after startup, which means they can be anywhere. Yeah, I really just want to have them in the place where they're supposed to live and get loaded automatically, if at all possible.


Manually? No, it's the zpool driver command which loads them on-demand. That does boil down to the same thing, and it would be a problem if, say, I had my MacPorts install (/opt/local) on a ZFS dataset and I needed to have that loaded early in the login process. I have a hunch though that the dialog to accept loading the unsigned kexts can pop up on/over the login screen.