On Mon, Feb 07, 2022 at 05:53:05PM +0100, Paul Menzel wrote: > Dear Sebastian, dear Paul, > > > In commit a6fda6dab9 (rcutorture: Tweak kvm options) > `tools/testing/selftests/rcutorture/configs/rcu/CFcommon` was extended by > the three selections below: > > CONFIG_HYPERVISOR_GUEST=y > CONFIG_PARAVIRT=y > CONFIG_KVM_GUEST=y > > Unfortunately, `CONFIG_HYPERVISOR_GUEST` is x86 specific and > `CONFIG_PARAVIRT` only available on x86 and ARM. > > Thus, running the tests on a ppc64le system (POWER8 IBM S822LC), the script > shows the warnings below: > > :CONFIG_HYPERVISOR_GUEST=y: improperly set > :CONFIG_PARAVIRT=y: improperly set > > Do you have a way, how to work around that? If you can tell me the Kconfig-option incantation for ppc64le, my thought would be to make rcutorture look for a CFcommon.ppc64. Then the proper Kconfig options for each architecture could be supplied. While we are thinking about this, here is the bash function that figures out which architecture rcutorture is running on, which is passed the newly built vmlinux file: identify_qemu () { local u="`file "$1"`" if test -n "$TORTURE_QEMU_CMD" then echo $TORTURE_QEMU_CMD elif echo $u | grep -q x86-64 then echo qemu-system-x86_64 elif echo $u | grep -q "Intel 80386" then echo qemu-system-i386 elif echo $u | grep -q aarch64 then echo qemu-system-aarch64 elif uname -a | grep -q ppc64 then echo qemu-system-ppc64 else echo Cannot figure out what qemu command to use! 1>&2 echo file $1 output: $u # Usually this will be one of /usr/bin/qemu-system-* # Use TORTURE_QEMU_CMD environment variable or appropriate # argument to top-level script. exit 1 fi } First, any better approach? Second, we need to know the Kconfig options -before- the vmlinux file is generated. What is the best approach in that case? Thanx, Paul