ZFS On Linux Landing Workaround For Linux 5.0 Kernel Support

Written by Michael Larabel in Linux Kernel on 17 January 2019 at 06:17 AM EST. 162 Comments
Last week I reported on ZFS On Linux breaking with Linux 5.0 due to some kernel symbols sought by this out-of-tree file-system driver no longer being exported and the upstream developers not willing to adjust for the ZoL code. That's still the case but the ZFS On Linux developers have a patch so at least the file-system driver will be able to build on Linux 5.0.

This ZOL + Linux 5.0 issue stems from a set of functions used by this ZFS Linux port for vectorized file-system checksums no longer being exported. The kernel developers don't want to re-export the functionality since as Greg Kroah-Hartman put it, "my tolerance for ZFS is pretty non-existant."

Since that Phoronix article last week, Greg KH followed up on the mailing list with, "Sorry, no, we do not keep symbols exported for no in-kernel users." Longtime Linux kernel developer Christoph Hellwig also suggested users switch instead to FreeBSD if caring about ZFS.

Greg KH also commented on Tuesday that Oracle/Sun are the ones to fundamentally blame for the license by which they put out ZFS as for upstream kernel developers not caring about the support. "ZFS could be the best filesystem ever to grace this planet, that's fantastic, but given that the creators of that code placed it under a license that was specifically designed to not be compatible with Linux to prevent it from ever being used on Linux, well, you can see why I really don't care about it. Why would I?"

So while these symbols are important for SIMD vectorized checksums for ZFS in the name of performance, with Linux 5.0+ they are not going to be exported for use by non-GPL modules. ZFS On Linux developer Tony Hutter has now staged a change that would disable vector instructions on Linux 5.0+ kernels. "The 5.0 kernel no longer exports the functions we need to vector (SSE/SSE2/SSE3/AVX...) instructions. Disable vector-based checksum algorithms when building against those kernels."

There's no word yet on how this would affect ZFS Linux performance for end-users. Those wishing to track the progress of this patch can do so via this issue ticket. Expect the fix to get in the very exciting ZOL 0.8 release.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week