[PATCH 2/3] lib/crc: tests: Add CRC_ENABLE_ALL_FOR_KUNIT

From: Eric Biggers

Date: Thu Mar 05 2026 - 22:38:28 EST


Now that crc_kunit uses the standard "depends on" pattern, enabling the
full set of CRC tests is a bit difficult, mainly due to CRC7 being
rarely used. Add a kconfig option to make it easier. It is visible
only when KUNIT, so hopefully the extra prompt won't be too annoying.

Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx>
---
lib/crc/Kconfig | 14 ++++++++++++++
1 file changed, 14 insertions(+)

diff --git a/lib/crc/Kconfig b/lib/crc/Kconfig
index 9ddfd1a29757..cca228879bb5 100644
--- a/lib/crc/Kconfig
+++ b/lib/crc/Kconfig
@@ -105,10 +105,24 @@ config CRC_KUNIT_TEST
Unit tests for the CRC library functions.

This is intended to help people writing architecture-specific
optimized versions. If unsure, say N.

+config CRC_ENABLE_ALL_FOR_KUNIT
+ tristate "Enable all CRC functions for KUnit test"
+ depends on KUNIT
+ select CRC7
+ select CRC16
+ select CRC_T10DIF
+ select CRC32
+ select CRC64
+ help
+ Enable all CRC functions that have test code in CRC_KUNIT_TEST.
+
+ Enable this only if you'd like the CRC KUnit test suite to test all
+ the CRC variants, even ones that wouldn't otherwise need to be built.
+
config CRC_BENCHMARK
bool "Benchmark for the CRC functions"
depends on CRC_KUNIT_TEST
help
Include benchmarks in the KUnit test suite for the CRC functions.
--
2.53.0