diff mbox series

[v4,2/2] rcutorture: Fix issue with re-using old images on ARM64

Message ID 20250415133622.1563137-3-joelagnelf@nvidia.com (mailing list archive)
State New
Headers show
Series None | expand

Commit Message

Joel Fernandes April 15, 2025, 1:36 p.m. UTC
On ARM64, when running with --configs '36*SRCU-P', I noticed that only 1 instance
instead of 36 for starting.

Fix it by checking for Image files, instead of bzImage which ARM does
not seem to have. With this I see all 36 instances running at the same
time in the batch.

Tested-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com>
---
 kernel/rcu/rcutorture.c                                  | 3 ++-
 tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

Comments

Joel Fernandes April 15, 2025, 1:46 p.m. UTC | #1
On 4/15/2025 9:36 AM, Joel Fernandes wrote:
> On ARM64, when running with --configs '36*SRCU-P', I noticed that only 1 instance
> instead of 36 for starting.
> 
> Fix it by checking for Image files, instead of bzImage which ARM does
> not seem to have. With this I see all 36 instances running at the same
> time in the batch.
> 
> Tested-by: Paul E. McKenney <paulmck@kernel.org>
> Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com>
> ---
>  kernel/rcu/rcutorture.c                                  | 3 ++-
>  tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh | 2 +-
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
> index 74de92c3a9ab..df6504a855aa 100644
> --- a/kernel/rcu/rcutorture.c
> +++ b/kernel/rcu/rcutorture.c
> @@ -2412,7 +2412,8 @@ rcu_torture_stats_print(void)
>  			pipesummary[i] += READ_ONCE(per_cpu(rcu_torture_count, cpu)[i]);
>  			batchsummary[i] += READ_ONCE(per_cpu(rcu_torture_batch, cpu)[i]);
>  		}
> -		n_gpwraps += cur_ops->get_gpwrap_count(cpu);
> +		if (cur_ops->get_gpwrap_count)
> +			n_gpwraps += cur_ops->get_gpwrap_count(cpu);
>  	}
Oops, this hunk was supposed to go into the previous patch. I fixed it in my
tree and will post with the full set of torture patches later:

https://git.kernel.org/pub/scm/linux/kernel/git/jfern/linux.git/log/?h=rcu/torture-for-6.16

Thanks.
diff mbox series

Patch

diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
index 74de92c3a9ab..df6504a855aa 100644
--- a/kernel/rcu/rcutorture.c
+++ b/kernel/rcu/rcutorture.c
@@ -2412,7 +2412,8 @@  rcu_torture_stats_print(void)
 			pipesummary[i] += READ_ONCE(per_cpu(rcu_torture_count, cpu)[i]);
 			batchsummary[i] += READ_ONCE(per_cpu(rcu_torture_batch, cpu)[i]);
 		}
-		n_gpwraps += cur_ops->get_gpwrap_count(cpu);
+		if (cur_ops->get_gpwrap_count)
+			n_gpwraps += cur_ops->get_gpwrap_count(cpu);
 	}
 	for (i = RCU_TORTURE_PIPE_LEN; i >= 0; i--) {
 		if (pipesummary[i] != 0)
diff --git a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh
index ad79784e552d..957800c9ffba 100755
--- a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh
+++ b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh
@@ -73,7 +73,7 @@  config_override_param "$config_dir/CFcommon.$(uname -m)" KcList \
 cp $T/KcList $resdir/ConfigFragment
 
 base_resdir=`echo $resdir | sed -e 's/\.[0-9]\+$//'`
-if test "$base_resdir" != "$resdir" && test -f $base_resdir/bzImage && test -f $base_resdir/vmlinux
+if test "$base_resdir" != "$resdir" && (test -f $base_resdir/bzImage || test -f $base_resdir/Image) && test -f $base_resdir/vmlinux
 then
 	# Rerunning previous test, so use that test's kernel.
 	QEMU="`identify_qemu $base_resdir/vmlinux`"