I'm trying to boot a Raspberry Pi 4 straight to root on ZFS (I know, it's my own fault :-) ).
The issue here is that when the loader loads zfs.ko (even when manually loading its deps (opensolaris.ko and cryptodev.ko)), it complains that fletcher_4_aarch64_neon_ops is not defined.
OpenZFS has commit with a simple workaround (disable NEON implementation of fletcher4 on FreeBSD):
Is it possible to import it into FreeBSD for now? (Ideally the issue will be fixed and we'll have a NEON impl of fletcher4, but for now having it work would be better than just failing).
I've tested this with the -CURRENT image for RPi3:
Unfortunately, I don't have enough hardware to run a full crochet build in an appropriate amount of time (I'm trying in a VM, but it's taking so long to even clone to /usr/src...).
I don't have the boot output, but have this:
I've mounted the UFS partition from the image I mentioned above and:
root@vm:/mnt/boot # nm kernel/zfs.ko | grep 'fletcher_4_' | grep U
This symbol should be defined in the module, per the source code. But for some reason it isn't. I'm not familiar enough with the FreeBSD CI to try and track errors about it, sorry :-(
Hopefully we can import the workaround for now and/or fix it properly soon.
Thank you, and sorry I can't help much more,
Closing this bug.
It seems I was looking at older versions of the code and had an old (a few days too old) image. This now works in the current images.