Message ID | 20240612013527.1325751-1-zhouzhouyi@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Commit | 29cf4c63d04b9752a32e33d46a57717121353ef7 |
Headers | show |
Series | [V3] rcutorture: Add CFcommon.arch for the various arch's need | expand |
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-laptop/ > [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-laptop/T/ > > 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. 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-laptop/ 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-laptop/T/ 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
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-laptop/ > > [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-laptop/T/ > > > > 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. That aside, this looks good to me; having the infrastructure to do this per-arch is nice! 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-laptop/ > > 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-laptop/T/ > > 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
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-laptop/ > > > [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-laptop/T/ > > > > > > 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-laptop/ > > > > 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-laptop/T/ > > > > 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
On Tue, Jun 18, 2024 at 12:47 AM Paul E. McKenney <paulmck@kernel.org> wrote: > > 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-laptop/ > > > > [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-laptop/T/ > > > > > > > > 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. yes, CONFIG_KVM_GUEST exists in powerpc & x86, which makes me think it is global. > > 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.) Thanks to Paul and Mark's guidance, I achieved a lot during this process ;-) I am going to create a new version of the patch, and test is both on X86 and PowerPC Cheers Zhouyi > > > 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? Very happy that Mark likes it ;-) > > 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-laptop/ > > > > > > 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-laptop/T/ > > > > > > 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
On Tue, Jun 18, 2024 at 06:41:22AM +0800, Zhouyi Zhou wrote: > On Tue, Jun 18, 2024 at 12:47 AM Paul E. McKenney <paulmck@kernel.org> wrote: > > > > 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-laptop/ > > > > > [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-laptop/T/ > > > > > > > > > > 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. > yes, CONFIG_KVM_GUEST exists in powerpc & x86, which makes me think it > is global. > > > > 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.) > Thanks to Paul and Mark's guidance, I achieved a lot during this process ;-) > > I am going to create a new version of the patch, and test is both on > X86 and PowerPC Very good, looking forward to it! Thanx, Paul > Cheers > Zhouyi > > > > > 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? > Very happy that Mark likes it ;-) > > > > 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-laptop/ > > > > > > > > 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-laptop/T/ > > > > > > > > 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
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 b33cd8753689..ad79784e552d 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 0e92d85313aa..cf0387ae5358 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 000000000000..2770560d56a0 --- /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 000000000000..2770560d56a0 --- /dev/null +++ b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon.x86_64 @@ -0,0 +1 @@ +CONFIG_HYPERVISOR_GUEST=y
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-laptop/ [3] https://lore.kernel.org/lkml/cd3709dc-2c08-4ac2-a19b-d8edb66195e3@paulmck-laptop/T/ Tested in x86_64 and PPC VM of Open Source Lab of Oregon State University. Signed-off-by: Zhouyi Zhou <zhouzhouyi@gmail.com> --- tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh | 2 ++ tools/testing/selftests/rcutorture/configs/rcu/CFcommon | 1 - tools/testing/selftests/rcutorture/configs/rcu/CFcommon.i686 | 1 + tools/testing/selftests/rcutorture/configs/rcu/CFcommon.x86_64 | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/CFcommon.i686 create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/CFcommon.x86_64