On Mon, Jun 17, 2024 at 05:28:14PM +0100, Mark Rutland wrote:
On Tue, Jun 11, 2024 at 07:57:29PM -0700, Paul E. McKenney wrote:
On Wed, Jun 12, 2024 at 01:35:27AM +0000, Zhouyi Zhou wrote:
Add CFcommon.arch for the various arch's need for rcutorture.
According to [1] and [2], this patch Fixes: a6fda6dab93c ("rcutorture: Tweak kvm options") by moving x86 specific kernel option CONFIG_HYPERVISOR_GUEST to CFcommon.arch
The patch has been revised and improved under Paul E. McKenney's guidance [3].
[1] https://lore.kernel.org/all/20240427005626.1365935-1-zhouzhouyi@gmail.com/ [2] https://lore.kernel.org/all/059d36ce-6453-42be-a31e-895abd35d590@paulmck-lap... [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-la...
Tested in x86_64 and PPC VM of Open Source Lab of Oregon State University.
Signed-off-by: Zhouyi Zhou zhouzhouyi@gmail.com
Much better, thank you!
I queued and pushed for review and testing with the usual editing, so please let me know if I messed anything up.
I added Mark on CC in case he has thoughts from an ARM perspective.
Ah, thanks!
From a quick scan, the only thing I spot is that CONFIG_KVM_GUEST is
also not an arm64 thing, and only exists on x86 & powerpc, so pulling that out too would be nice.
Thank you for looking this over!
Zhouyi, would you be willing to add this change, either as a new version of this patch or as a new patch on top of it? (Your choice.)
That aside, this looks good to me; having the infrastructure to do this per-arch is nice!
Glad you like it! May we have your ack?
Thanx, Paul
Mark.
Thanx, Paul
commit 29cf4c63d04b9752a32e33d46a57717121353ef7 Author: Zhouyi Zhou zhouzhouyi@gmail.com Date: Wed Jun 12 01:35:27 2024 +0000
rcutorture: Add CFcommon.arch for the various arch's need
Add CFcommon.arch for the various arch's need for rcutorture. In accordance with [1] and [2], this patch moves x86 specific kernel option CONFIG_HYPERVISOR_GUEST to CFcommon.arch [1] https://lore.kernel.org/all/20240427005626.1365935-1-zhouzhouyi@gmail.com/ [2] https://lore.kernel.org/all/059d36ce-6453-42be-a31e-895abd35d590@paulmck-lap... Tested in x86_64 and PPC VM of Open Source Lab of Oregon State University. Link: https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-la... Fixes: a6fda6dab93c ("rcutorture: Tweak kvm options") Suggested-by: Paul E. McKenney paulmck@kernel.org Signed-off-by: Zhouyi Zhou zhouzhouyi@gmail.com Cc: Mark Rutland mark.rutland@arm.com Signed-off-by: Paul E. McKenney paulmck@kernel.org
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 b33cd87536899..ad79784e552d2 100755 --- a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh +++ b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh @@ -68,6 +68,8 @@ config_override_param "--gdb options" KcList "$TORTURE_KCONFIG_GDB_ARG" config_override_param "--kasan options" KcList "$TORTURE_KCONFIG_KASAN_ARG" config_override_param "--kcsan options" KcList "$TORTURE_KCONFIG_KCSAN_ARG" config_override_param "--kconfig argument" KcList "$TORTURE_KCONFIG_ARG" +config_override_param "$config_dir/CFcommon.$(uname -m)" KcList \
"`cat $config_dir/CFcommon.$(uname -m) 2> /dev/null`"
cp $T/KcList $resdir/ConfigFragment base_resdir=`echo $resdir | sed -e 's/.[0-9]+$//'` diff --git a/tools/testing/selftests/rcutorture/configs/rcu/CFcommon b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon index 0e92d85313aa7..cf0387ae53584 100644 --- a/tools/testing/selftests/rcutorture/configs/rcu/CFcommon +++ b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon @@ -1,6 +1,5 @@ CONFIG_RCU_TORTURE_TEST=y CONFIG_PRINTK_TIME=y -CONFIG_HYPERVISOR_GUEST=y CONFIG_PARAVIRT=y CONFIG_KVM_GUEST=y CONFIG_KCSAN_ASSUME_PLAIN_WRITES_ATOMIC=n diff --git a/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.i686 b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.i686 new file mode 100644 index 0000000000000..2770560d56a0c --- /dev/null +++ b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.i686 @@ -0,0 +1 @@ +CONFIG_HYPERVISOR_GUEST=y diff --git a/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.x86_64 b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.x86_64 new file mode 100644 index 0000000000000..2770560d56a0c --- /dev/null +++ b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.x86_64 @@ -0,0 +1 @@ +CONFIG_HYPERVISOR_GUEST=y