Merged yesterday were all the CRC code updates for the Linux 7.1 kernel. Most notable with that pull is an ARM64-optimized CRC64-NVMe implementation that can deliver multiple times faster performance.
A new optimized version of the CRC64-NVMe algorithm has landed in Linux 7.1 that makes use of NEON Polynomial Multiply Long (PMULL) instructions for use in place of the generic software-based implementation. That generic software path has been causing a bottleneck in NVMe and other storage subsystem code of the Linux kernel.
Long story short, that work by Demian Shulhan is delivering almost a 6x improvement over the current generic software code path in testing on a modest Arm Cortex-A72. The CRC64-NVMe algorithm is used for data integrity verification and more, so it ends up being a very worthwhile win and surprising there wasn’t any NEON optimized version until now.
That code was merged via this pull request.
