diff mbox series

lib/crc_kunit.c: update comment in crc_benchmark()

Message ID 20250305015830.37813-1-ebiggers@kernel.org (mailing list archive)
State Not Applicable
Delegated to: Herbert Xu
Headers show
Series lib/crc_kunit.c: update comment in crc_benchmark() | expand

Commit Message

Eric Biggers March 5, 2025, 1:58 a.m. UTC
From: Eric Biggers <ebiggers@google.com>

None of the CRC library functions use __pure anymore, so the comment in
crc_benchmark() is outdated.  But the comment was not really correct
anyway, since the CRC computation could (in principle) be optimized out
regardless of __pure.  Update the comment to have a proper explanation.

Signed-off-by: Eric Biggers <ebiggers@google.com>
---
 lib/crc_kunit.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)


base-commit: 13f3d13d88b5dcba104a204fcbee61c75f8407d0

Comments

Eric Biggers March 6, 2025, 5:21 p.m. UTC | #1
On Tue, Mar 04, 2025 at 05:58:30PM -0800, Eric Biggers wrote:
> From: Eric Biggers <ebiggers@google.com>
> 
> None of the CRC library functions use __pure anymore, so the comment in
> crc_benchmark() is outdated.  But the comment was not really correct
> anyway, since the CRC computation could (in principle) be optimized out
> regardless of __pure.  Update the comment to have a proper explanation.
> 
> Signed-off-by: Eric Biggers <ebiggers@google.com>
> ---
>  lib/crc_kunit.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)

Applied to
https://web.git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git/log/?h=crc-next

- Eric
diff mbox series

Patch

diff --git a/lib/crc_kunit.c b/lib/crc_kunit.c
index 40b4b41f2184..d5a5045fd9ab 100644
--- a/lib/crc_kunit.c
+++ b/lib/crc_kunit.c
@@ -222,12 +222,13 @@  crc_benchmark(struct kunit *test,
 	static const size_t lens_to_test[] = {
 		1, 16, 64, 127, 128, 200, 256, 511, 512, 1024, 3173, 4096, 16384,
 	};
 	size_t len, i, j, num_iters;
 	/*
-	 * Some of the CRC library functions are marked as __pure, so use
-	 * volatile to ensure that all calls are really made as intended.
+	 * The CRC value that this function computes in a series of calls to
+	 * crc_func is never actually used, so use volatile to ensure that the
+	 * computations are done as intended and don't all get optimized out.
 	 */
 	volatile u64 crc = 0;
 	u64 t;
 
 	if (!IS_ENABLED(CONFIG_CRC_BENCHMARK))