Message ID | 20190701040415.219001-3-joel@joelfernandes.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [RFC,1/3] rcu: Expedite the rcu quiescent state reporting if help needed | expand |
On 2019-07-01 00:04:15 [-0400], Joel Fernandes (Google) wrote: > This reverts commit a6fda6dab93c2c06ef4b8cb4b9258df6674d2438 which > causes kvm.sh to not run on my machines. The qemu-system-x86_64 command > runs but does nothing. Nope. I would like to know *why* you need 'noapic' to work. Is it a brand new or old qemu-system-x86_64? > Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org> Sebastian
On Mon, Jul 01, 2019 at 02:23:58PM +0200, Sebastian Andrzej Siewior wrote: > On 2019-07-01 00:04:15 [-0400], Joel Fernandes (Google) wrote: > > This reverts commit a6fda6dab93c2c06ef4b8cb4b9258df6674d2438 which > > causes kvm.sh to not run on my machines. The qemu-system-x86_64 command > > runs but does nothing. > > Nope. I would like to know *why* you need 'noapic' to work. Is it a > brand new or old qemu-system-x86_64? I did not have time to debug yesterday and I posted this particular revert as an 'RFC' just to make aware of this problem. I spent some more time just now, it looks like this has nothing to do with 'noapic' and appears to be a problem on debian distros with the e1000e NIC. May be this NIC was added to the virtual hardware because of -machine in the patch? Any if I add the following to the qemu command that kvm.sh runs, it works again: -net nic,model=e1000 Without it I get: qemu-system-x86_64: Initialization of device e1000e failed: failed to find romfile "efi-e1000e.rom" Seems to be mentioned here: https://bugs.launchpad.net/ubuntu/+source/ipxe/+bug/1737211 And in syzkaller as well: https://github.com/google/syzkaller/blob/master/vm/qemu/qemu.go#L88 Adding Dmitry who is syzkaller owner for any thoughts as well. I'm happy to write a patch to set the nic model as e1000 and send it out if we agree this solution is good enough. - Joel
On Mon, Jul 1, 2019 at 4:14 PM Joel Fernandes <joel@joelfernandes.org> wrote: > > On Mon, Jul 01, 2019 at 02:23:58PM +0200, Sebastian Andrzej Siewior wrote: > > On 2019-07-01 00:04:15 [-0400], Joel Fernandes (Google) wrote: > > > This reverts commit a6fda6dab93c2c06ef4b8cb4b9258df6674d2438 which > > > causes kvm.sh to not run on my machines. The qemu-system-x86_64 command > > > runs but does nothing. > > > > Nope. I would like to know *why* you need 'noapic' to work. Is it a > > brand new or old qemu-system-x86_64? > > I did not have time to debug yesterday and I posted this particular revert as > an 'RFC' just to make aware of this problem. > > I spent some more time just now, it looks like this has nothing to do with > 'noapic' and appears to be a problem on debian distros with the e1000e NIC. > May be this NIC was added to the virtual hardware because of -machine in the > patch? > > Any if I add the following to the qemu command that kvm.sh runs, it works again: > -net nic,model=e1000 > > Without it I get: > qemu-system-x86_64: Initialization of device e1000e failed: failed to find romfile "efi-e1000e.rom" > > Seems to be mentioned here: > https://bugs.launchpad.net/ubuntu/+source/ipxe/+bug/1737211 > > And in syzkaller as well: > https://github.com/google/syzkaller/blob/master/vm/qemu/qemu.go#L88 > > Adding Dmitry who is syzkaller owner for any thoughts as well. I don't have many thoughts on this. That particular error looked like a bug in the package in the particular distro/version. > I'm happy to write a patch to set the nic model as e1000 and send it out if > we agree this solution is good enough. > > - Joel >
diff --git a/tools/testing/selftests/rcutorture/bin/functions.sh b/tools/testing/selftests/rcutorture/bin/functions.sh index c3a49fb4d6f6..6bcb8b5b2ff2 100644 --- a/tools/testing/selftests/rcutorture/bin/functions.sh +++ b/tools/testing/selftests/rcutorture/bin/functions.sh @@ -172,7 +172,7 @@ identify_qemu_append () { local console=ttyS0 case "$1" in qemu-system-x86_64|qemu-system-i386) - echo selinux=0 initcall_debug debug + echo noapic selinux=0 initcall_debug debug ;; qemu-system-aarch64) console=ttyAMA0 @@ -191,19 +191,8 @@ identify_qemu_append () { # Output arguments for qemu arguments based on the TORTURE_QEMU_MAC # and TORTURE_QEMU_INTERACTIVE environment variables. identify_qemu_args () { - local KVM_CPU="" - case "$1" in - qemu-system-x86_64) - KVM_CPU=kvm64 - ;; - qemu-system-i386) - KVM_CPU=kvm32 - ;; - esac case "$1" in qemu-system-x86_64|qemu-system-i386) - echo -machine q35,accel=kvm - echo -cpu ${KVM_CPU} ;; qemu-system-aarch64) echo -machine virt,gic-version=host -cpu host diff --git a/tools/testing/selftests/rcutorture/configs/rcu/CFcommon b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon index e19a444a0684..d2d2a86139db 100644 --- a/tools/testing/selftests/rcutorture/configs/rcu/CFcommon +++ b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon @@ -1,5 +1,2 @@ CONFIG_RCU_TORTURE_TEST=y CONFIG_PRINTK_TIME=y -CONFIG_HYPERVISOR_GUEST=y -CONFIG_PARAVIRT=y -CONFIG_KVM_GUEST=y
This reverts commit a6fda6dab93c2c06ef4b8cb4b9258df6674d2438 which causes kvm.sh to not run on my machines. The qemu-system-x86_64 command runs but does nothing. Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org> --- I am Ok if we want to drop this patch but it is in my tree because without it I can't run the tests. tools/testing/selftests/rcutorture/bin/functions.sh | 13 +------------ .../selftests/rcutorture/configs/rcu/CFcommon | 3 --- 2 files changed, 1 insertion(+), 15 deletions(-)