* qemu crashes on changing display resolution within guest
@ 2021-03-12 22:39 Igor Mammedov
2021-03-12 22:47 ` Paolo Bonzini
2021-03-14 10:24 ` Andrew Jones
0 siblings, 2 replies; 4+ messages in thread
From: Igor Mammedov @ 2021-03-12 22:39 UTC (permalink / raw)
To: qemu-devel; +Cc: pbonzini, drjones, zhukeqian1, kraxel, peterx
happens on current master,
to reproduce start
./x86_64-softmmu/qemu-system-x86_64 -enable-kvm -m 1g -M pc -vnc localhost:0 \
-snapshot -cdrom Fedora-Workstation-Live-x86_64-33-1.2.iso
connect to guest using 'Remote Desktop', wait till it boots to graphical desktop
then try to change resolution to 800x600
QEMU will crash in a second or 2 with:
qemu-system-x86_64: ../qemu/accel/kvm/kvm-all.c:690: kvm_log_clear_one_slot: Assertion `QEMU_IS_ALIGNED(start | size, psize)' failed.
offending commit:
commit 3920552846e881bafa9f9aad0bb1a6eef874d7fb (HEAD, refs/bisect/bad)
Author: Keqian Zhu <zhukeqian1@huawei.com>
Date: Thu Dec 17 09:49:41 2020 +0800
accel: kvm: Add aligment assert for kvm_log_clear_one_slot
PS:
same happens when using spice client
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: qemu crashes on changing display resolution within guest
2021-03-12 22:39 qemu crashes on changing display resolution within guest Igor Mammedov
@ 2021-03-12 22:47 ` Paolo Bonzini
2021-03-14 10:24 ` Andrew Jones
1 sibling, 0 replies; 4+ messages in thread
From: Paolo Bonzini @ 2021-03-12 22:47 UTC (permalink / raw)
To: Igor Mammedov; +Cc: drjones, Keqian Zhu, qemu-devel, peterx, kraxel
[-- Attachment #1: Type: text/plain, Size: 934 bytes --]
Pull request coming next Monday.
Paolo
Il ven 12 mar 2021, 23:40 Igor Mammedov <imammedo@redhat.com> ha scritto:
> happens on current master,
>
> to reproduce start
> ./x86_64-softmmu/qemu-system-x86_64 -enable-kvm -m 1g -M pc -vnc
> localhost:0 \
> -snapshot -cdrom Fedora-Workstation-Live-x86_64-33-1.2.iso
>
> connect to guest using 'Remote Desktop', wait till it boots to graphical
> desktop
> then try to change resolution to 800x600
>
> QEMU will crash in a second or 2 with:
> qemu-system-x86_64: ../qemu/accel/kvm/kvm-all.c:690:
> kvm_log_clear_one_slot: Assertion `QEMU_IS_ALIGNED(start | size, psize)'
> failed.
>
>
> offending commit:
>
> commit 3920552846e881bafa9f9aad0bb1a6eef874d7fb (HEAD, refs/bisect/bad)
> Author: Keqian Zhu <zhukeqian1@huawei.com>
> Date: Thu Dec 17 09:49:41 2020 +0800
>
> accel: kvm: Add aligment assert for kvm_log_clear_one_slot
>
> PS:
> same happens when using spice client
>
>
[-- Attachment #2: Type: text/html, Size: 1413 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: qemu crashes on changing display resolution within guest
2021-03-12 22:39 qemu crashes on changing display resolution within guest Igor Mammedov
2021-03-12 22:47 ` Paolo Bonzini
@ 2021-03-14 10:24 ` Andrew Jones
2021-03-14 12:24 ` zhukeqian
1 sibling, 1 reply; 4+ messages in thread
From: Andrew Jones @ 2021-03-14 10:24 UTC (permalink / raw)
To: Igor Mammedov; +Cc: thuth, qemu-devel, peterx, kraxel, pbonzini, zhukeqian1
On Fri, Mar 12, 2021 at 11:39:49PM +0100, Igor Mammedov wrote:
> happens on current master,
>
> to reproduce start
> ./x86_64-softmmu/qemu-system-x86_64 -enable-kvm -m 1g -M pc -vnc localhost:0 \
> -snapshot -cdrom Fedora-Workstation-Live-x86_64-33-1.2.iso
>
> connect to guest using 'Remote Desktop', wait till it boots to graphical desktop
> then try to change resolution to 800x600
>
> QEMU will crash in a second or 2 with:
> qemu-system-x86_64: ../qemu/accel/kvm/kvm-all.c:690: kvm_log_clear_one_slot: Assertion `QEMU_IS_ALIGNED(start | size, psize)' failed.
>
>
> offending commit:
>
> commit 3920552846e881bafa9f9aad0bb1a6eef874d7fb (HEAD, refs/bisect/bad)
> Author: Keqian Zhu <zhukeqian1@huawei.com>
> Date: Thu Dec 17 09:49:41 2020 +0800
>
> accel: kvm: Add aligment assert for kvm_log_clear_one_slot
>
> PS:
> same happens when using spice client
>
>
Yup, this is an already reported, disappointing regression. As Paolo says,
a revert is on the way. It's extra disappointing because it actually isn't
that hard to reproduce. A kvm-unit-tests migration test reproduces it
(see below). I guess we should improve our QEMU CI to also run
kvm-unit-tests for accel=kvm related changes on all architectures that
support KVM (or at least x86_64 and aarch64).
Thanks,
drew
$ tests/its-migration
BUILD_HEAD=5f8efadf
run_migration timeout -k 1s --foreground 90s ../build/q/qemu-system-aarch64 -nodefaults -machine virt,gic-version=host,accel=kvm -cpu host -device virtio-serial-device -device virtconsole,chardev=ctd -chardev testdev,id=ctd -device pci-testdev -display none -serial stdio -kernel /tmp/tmp.kbJOUcS86v -smp 48 -machine gic-version=3 -append its-migration # -initrd /tmp/tmp.vN8JxnjX7h
qemu-system-aarch64: -chardev socket,id=mon1,path=/tmp/mig-helper-qmp1.2e6Up9BrWK,server,nowait: warning: short-form boolean option 'server' deprecated
Please use server=on instead
qemu-system-aarch64: -chardev socket,id=mon1,path=/tmp/mig-helper-qmp1.2e6Up9BrWK,server,nowait: warning: short-form boolean option 'nowait' deprecated
Please use wait=off instead
qemu-system-aarch64: -chardev socket,id=mon2,path=/tmp/mig-helper-qmp2.HcqdylHwvn,server,nowait: warning: short-form boolean option 'server' deprecated
Please use server=on instead
qemu-system-aarch64: -chardev socket,id=mon2,path=/tmp/mig-helper-qmp2.HcqdylHwvn,server,nowait: warning: short-form boolean option 'nowait' deprecated
Please use wait=off instead
ITS: MAPD devid=2 size = 0x8 itt=0x40bc0000 valid=1
ITS: MAPD devid=7 size = 0x8 itt=0x40bd0000 valid=1
MAPC col_id=3 target_addr = 0x30000 valid=1
MAPC col_id=2 target_addr = 0x20000 valid=1
INVALL col_id=2
INVALL col_id=3
MAPTI dev_id=2 event_id=20 -> phys_id=8195, col_id=3
MAPTI dev_id=7 event_id=255 -> phys_id=8196, col_id=2
Now migrate the VM, then press a key to continue...
qemu-system-aarch64: ../../qemu/accel/kvm/kvm-all.c:690: kvm_log_clear_one_slot: Assertion `QEMU_IS_ALIGNED(start | size, psize)' failed.
qemu-system-aarch64: Not a migration stream
qemu-system-aarch64: load of migration failed: Invalid argument
Ncat: Connection reset by peer.
timeout: the monitored command dumped core
/tmp/tmp.M1473gQVZ0: line 126: 1545037 Aborted timeout -k 1s --foreground 90s ../build/q/qemu-system-aarch64 -nodefaults -machine virt,gic-version=host,accel=kvm -cpu host -device virtio-serial-device -device virtconsole,chardev=ctd -chardev testdev,id=ctd -device pci-testdev -display none -serial stdio -kernel /tmp/tmp.kbJOUcS86v -smp 48 -machine gic-version=3 -append its-migration -initrd /tmp/tmp.vN8JxnjX7h -chardev socket,id=mon1,path=/tmp/mig-helper-qmp1.2e6Up9BrWK,server,nowait -mon chardev=mon1,mode=control
Ncat: Connection refused.
Ncat: Connection refused.
^Ctests/its-migration: line 1: 1545202 Terminated summary=$(eval $cmdline 2> >(RUNTIME_log_stderr $testname) > >(tee >(RUNTIME_log_stdout $testname $kernel) | extract_summary))
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: qemu crashes on changing display resolution within guest
2021-03-14 10:24 ` Andrew Jones
@ 2021-03-14 12:24 ` zhukeqian
0 siblings, 0 replies; 4+ messages in thread
From: zhukeqian @ 2021-03-14 12:24 UTC (permalink / raw)
To: Andrew Jones, Igor Mammedov
Cc: pbonzini, Thomas Huth, qemu-devel, peterx, kraxel
[-- Attachment #1: Type: text/plain, Size: 4114 bytes --]
Thanks, drew. I'll be more careful in the future.
Keqian.
On Fri, Mar 12, 2021 at 11:39:49PM +0100, Igor Mammedov wrote:
> happens on current master,
>
> to reproduce start
> ./x86_64-softmmu/qemu-system-x86_64 -enable-kvm -m 1g -M pc -vnc localhost:0 \
> -snapshot -cdrom Fedora-Workstation-Live-x86_64-33-1.2.iso
>
> connect to guest using 'Remote Desktop', wait till it boots to graphical desktop
> then try to change resolution to 800x600
>
> QEMU will crash in a second or 2 with:
> qemu-system-x86_64: ../qemu/accel/kvm/kvm-all.c:690: kvm_log_clear_one_slot: Assertion `QEMU_IS_ALIGNED(start | size, psize)' failed.
>
>
> offending commit:
>
> commit 3920552846e881bafa9f9aad0bb1a6eef874d7fb (HEAD, refs/bisect/bad)
> Author: Keqian Zhu < zhukeqian1@huawei.com<mailto:zhukeqian1@huawei.com>>
> Date: Thu Dec 17 09:49:41 2020 +0800
>
> accel: kvm: Add aligment assert for kvm_log_clear_one_slot
>
> PS:
> same happens when using spice client
>
>
Yup, this is an already reported, disappointing regression. As Paolo says,
a revert is on the way. It's extra disappointing because it actually isn't
that hard to reproduce. A kvm-unit-tests migration test reproduces it
(see below). I guess we should improve our QEMU CI to also run
kvm-unit-tests for accel=kvm related changes on all architectures that
support KVM (or at least x86_64 and aarch64).
Thanks,
drew
$ tests/its-migration
BUILD_HEAD=5f8efadf
run_migration timeout -k 1s --foreground 90s ../build/q/qemu-system-aarch64 -nodefaults -machine virt,gic-version=host,accel=kvm -cpu host -device virtio-serial-device -device virtconsole,chardev=ctd -chardev testdev,id=ctd -device pci-testdev -display none -serial stdio -kernel /tmp/tmp.kbJOUcS86v -smp 48 -machine gic-version=3 -append its-migration # -initrd /tmp/tmp.vN8JxnjX7h
qemu-system-aarch64: -chardev socket,id=mon1,path=/tmp/mig-helper-qmp1.2e6Up9BrWK,server,nowait: warning: short-form boolean option 'server' deprecated
Please use server=on instead
qemu-system-aarch64: -chardev socket,id=mon1,path=/tmp/mig-helper-qmp1.2e6Up9BrWK,server,nowait: warning: short-form boolean option 'nowait' deprecated
Please use wait=off instead
qemu-system-aarch64: -chardev socket,id=mon2,path=/tmp/mig-helper-qmp2.HcqdylHwvn,server,nowait: warning: short-form boolean option 'server' deprecated
Please use server=on instead
qemu-system-aarch64: -chardev socket,id=mon2,path=/tmp/mig-helper-qmp2.HcqdylHwvn,server,nowait: warning: short-form boolean option 'nowait' deprecated
Please use wait=off instead
ITS: MAPD devid=2 size = 0x8 itt=0x40bc0000 valid=1
ITS: MAPD devid=7 size = 0x8 itt=0x40bd0000 valid=1
MAPC col_id=3 target_addr = 0x30000 valid=1
MAPC col_id=2 target_addr = 0x20000 valid=1
INVALL col_id=2
INVALL col_id=3
MAPTI dev_id=2 event_id=20 -> phys_id=8195, col_id=3
MAPTI dev_id=7 event_id=255 -> phys_id=8196, col_id=2
Now migrate the VM, then press a key to continue...
qemu-system-aarch64: ../../qemu/accel/kvm/kvm-all.c:690: kvm_log_clear_one_slot: Assertion `QEMU_IS_ALIGNED(start | size, psize)' failed.
qemu-system-aarch64: Not a migration stream
qemu-system-aarch64: load of migration failed: Invalid argument
Ncat: Connection reset by peer.
timeout: the monitored command dumped core
/tmp/tmp.M1473gQVZ0: line 126: 1545037 Aborted timeout -k 1s --foreground 90s ../build/q/qemu-system-aarch64 -nodefaults -machine virt,gic-version=host,accel=kvm -cpu host -device virtio-serial-device -device virtconsole,chardev=ctd -chardev testdev,id=ctd -device pci-testdev -display none -serial stdio -kernel /tmp/tmp.kbJOUcS86v -smp 48 -machine gic-version=3 -append its-migration -initrd /tmp/tmp.vN8JxnjX7h -chardev socket,id=mon1,path=/tmp/mig-helper-qmp1.2e6Up9BrWK,server,nowait -mon chardev=mon1,mode=control
Ncat: Connection refused.
Ncat: Connection refused.
^Ctests/its-migration: line 1: 1545202 Terminated summary=$(eval $cmdline 2> >(RUNTIME_log_stderr $testname) > >(tee >(RUNTIME_log_stdout $testname $kernel) | extract_summary))
[-- Attachment #2: Type: text/html, Size: 5411 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-03-14 12:27 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-03-12 22:39 qemu crashes on changing display resolution within guest Igor Mammedov
2021-03-12 22:47 ` Paolo Bonzini
2021-03-14 10:24 ` Andrew Jones
2021-03-14 12:24 ` zhukeqian
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.