lib/crc32: Remove unused combination support
authorEric Biggers <ebiggers@kernel.org>
Sat, 7 Jun 2025 03:22:28 +0000 (20:22 -0700)
committerEric Biggers <ebiggers@kernel.org>
Mon, 30 Jun 2025 16:31:57 +0000 (09:31 -0700)
commitf2703a104e89077e622e2f34ac686262c5180d71
tree4886a3c868496d465dac7f53f9b1c91d90823b08
parentb0e04dde8e78fd0f08210c594ab29cbbcd841b73
lib/crc32: Remove unused combination support

Remove crc32_le_combine() and crc32_le_shift(), since they are no longer
used.

Although combination is an interesting thing that can be done with CRCs,
it turned out that none of the users of it in the kernel were even close
to being worthwhile.  All were much better off simply chaining the CRCs
or processing zeroes.

Let's remove the CRC32 combination code for now.  It can come back
(potentially optimized with carryless multiplication instructions) if
there is ever a case where it would actually be worthwhile.

Link: https://lore.kernel.org/r/20250607032228.27868-1-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
include/linux/crc32.h
lib/crc32.c
lib/tests/crc_kunit.c