ZFS has support for Intel QuickAssist (QAT) acceleration during compression, encryption and checksum.
If I understand correctly, it is not included in the current ebuild. Has it been left out due to any bug, instability, etc? Could it be included in the ebuild for the current version of ZFS?
I can offer my current hardware for testing.
I have compatible hardware and can investigate it.
Will need to do some research on it, on licensing and packaging QAT libraries, so it will not happen soon, but It's something I wanted to do anyway, so thanks for reminder =)
situation with QAT is rather awful and to build on modern kernels it requires patching the kernel.
and you can't use in-kernel QAT, because of licensing reasons, it has to be external one, provided as a separate package/source at build time.
zfs-2.0.0-rc3 includes patches and general readme in contrib/intel_qat
so this will not work out of the box.
I'll leave bug open for now, but QAT support via ebuild not happening for now.
Thanks a lot for looking into this. If I may ask: why is QAT support not happening via ebuild? Is kernel patching or other limitation not acceptable by Gentoo? Or is not happening because we need a maintainer to step in and have the time to do it?
I am asking because I've been using some of my spare time to create a private ebuild to install QAT, patching kernels 5.8.x. It is working fine, except because the qat_service is installed, by the driver, in /etc/init.d, so no systemd support under Gentoo:
I am trying, to the best of my abilities, to install QAT support in my Gentoo server, so I can share my work and you could decide if it is usable for sys-fs/zfs. Of course, I don't want to overstep here.
I forgot to add the github link to my ebuild in my previous message:
oh I misunderstood something.
I thought that kernel needs patching to be compatible with QAT
but it's the other way, QAT needs patching to be compatible with certain kernels.
btw, zfs2 itself now includes those patches (just for convenience, it does not apply them, just contains)
it that case I can look at it again, you ebuild is a good starting point.
my QAT-capable hardware is running FreeBSD(FreeNAS) now, but I wanted to migrate it to gentoo anyway, another reason to start this project.
No promises, but this looks doable now, sorry for confusion.
To address build issues I need to poke it myself, addwrite to root filesystem directories is absolutely no-go in gentoo repo, this will need a workaround or fix.
I will poke it, maybe this weekend, maybe not, bit busy lately.
I'm happy I was of some assistance.
Regarding the patches provided in the ZFS repo, I read it in your comment, but then forgot it, so I found them in the source, SPDK's github. However, keep in mind that they are not complete. When compiling the driver with --enable-qat-lkcf, the driver requires the "ablkcipher" by the kernel, but support was dropped in 5.6 in favor of "skcipher". Thus the big patch to migrate all the calls to "ablkcipher" to "skcypher". I don't know if the ZFS developers solve this issue in a different way.
good news, got my nas migrated to gentoo from freeNAS, so I now have a machine to test this on. will poke as soon as I have more time.