Isn't there already a kernel-mode CIFS server in Linux via OpenZFS? (I haven't used ZFS on Linux so this might be a silly question. All my ZFS usage has been on BSD and Solaris.)
ZFS has an implementation of CIFS (SMB to be pedantic) which is included in OpenZFS.
From everything I've read, if you're on Linux you're better off not exposing the shares using the ZFS tooling and instead just use Samba (due to it's greater compatibility).
ZFS on linux uses the system tooling for SMB and NFS. Like if you `zfs share` a dataset, it modifies the system /etc/smb.conf or /etc/exports.