All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Carlier <devnexen@gmail.com>
To: Andrew Morton <akpm@linux-foundation.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Josh Law <objecting@objecting.org>,
	Mark Brown <broonie@kernel.org>
Cc: linux-kernel@vger.kernel.org, David Carlier <devnexen@gmail.com>
Subject: [PATCH] lib: skip percpu_counter_tree boundary kunit tests on single-CPU
Date: Tue, 17 Mar 2026 15:06:38 +0000	[thread overview]
Message-ID: <20260317150638.37438-1-devnexen@gmail.com> (raw)

On single-CPU topologies, accuracy_multiplier is zero, making both
approx_accuracy_range.under and .over zero. The boundary tests in
hpcc_test_compare_value_boundaries and hpcc_test_compare_counter_boundaries
then degenerate to comparing 0 vs 0, which correctly returns 0 (equal)
but the tests expect nonzero results.

Skip these boundary tests with kunit_skip() when accuracy is zero,
since approximation boundaries are meaningless without multi-CPU carry
propagation.

Fixes: ebc1ff504f55 ("lib: add kunit boundary tests for percpu_counter_tree comparisons")
Signed-off-by: David Carlier <devnexen@gmail.com>
---
 lib/tests/percpu_counter_tree_kunit.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/tests/percpu_counter_tree_kunit.c b/lib/tests/percpu_counter_tree_kunit.c
index 4d058bc78f7d..609992bfaa21 100644
--- a/lib/tests/percpu_counter_tree_kunit.c
+++ b/lib/tests/percpu_counter_tree_kunit.c
@@ -101,6 +101,9 @@ static void hpcc_test_compare_value_boundaries(struct kunit *test)
 	percpu_counter_tree_set(&pct, 0);
 	percpu_counter_tree_approximate_accuracy_range(&pct, &under, &over);
 
+	if (!under && !over)
+		kunit_skip(test, "no approximation accuracy on single-CPU topology");
+
 	/*
 	 * With approx_sum = precise_sum = 0, from the accuracy invariant:
 	 *   approx_sum - over <= precise_sum <= approx_sum + under
@@ -214,6 +217,9 @@ static void hpcc_test_compare_counter_boundaries(struct kunit *test)
 	 */
 	combined = under + over;
 
+	if (!combined)
+		kunit_skip(test, "no approximation accuracy on single-CPU topology");
+
 	/* --- percpu_counter_tree_approximate_compare --- */
 
 	/* At boundary: indeterminate */
-- 
2.53.0


             reply	other threads:[~2026-03-17 15:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-17 15:06 David Carlier [this message]
2026-03-17 15:32 ` [PATCH] lib: skip percpu_counter_tree boundary kunit tests on single-CPU Mathieu Desnoyers
2026-03-17 15:39 ` David Carlier
2026-03-17 15:41   ` Mathieu Desnoyers
2026-03-17 15:54   ` Mark Brown
2026-03-17 16:09 ` Josh Law

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260317150638.37438-1-devnexen@gmail.com \
    --to=devnexen@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=broonie@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=objecting@objecting.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.