-
Bug
-
Resolution: Cannot Reproduce
-
Normal
-
None
-
rhel-9.4
-
None
-
Moderate
-
rhel-sst-virtualization
-
ssg_virtualization
-
None
-
QE ack
-
False
-
-
None
-
Red Hat Enterprise Linux
-
None
-
None
-
None
-
-
x86_64
-
Linux
-
None
What were you trying to do that didn't work?
The qemu-kvm crashes when post-copy migrating the rt-VM with vhost-user interfaces for multi times
Please provide the package NVR for which bug is seen:
host:
qemu-kvm-8.1.0-4.el9.x86_64
5.14.0-389.el9.x86_64+rt
guest:
5.14.0-389.el9.x86_64+rt
How reproducible:
100%
Steps to reproduce
1. create a ovs-dpdk
2. start a rt-VM with three 1Q vhost-user interfaces
3. post-copy migrate the VM
4. repeat the migration multiple times
In my case, the migration fails at the 3th times
5. check the migration job/qemu-kvm log
On the source host:
initiating migration qemu-kvm: ../softmmu/runstate.c:199: void runstate_set(RunState): Assertion `new_state < RUN_STATE__MAX' failed. shutting down, reason=crashed
Expected results
The qemu-kvm will not crash
Actual results
The qemu-kvm crashes
Additional info:
(1) the VM's qemu-kvm coredump info on the source host:
# coredumpctl info PID: 6701 (qemu-kvm) UID: 0 (root) GID: 107 (qemu) Signal: 6 (ABRT) Timestamp: Tue 2023-11-28 04:07:24 EST (1h 8min ago) Command Line: /usr/libexec/qemu-kvm -name guest=rhel9.4,debug-threads=on -S -object $'{"qom-type":"secret","id":"masterKey0","format> Executable: /usr/libexec/qemu-kvm Control Group: /machine.slice/machine-qemu\x2d2\x2drhel9.4.scope/libvirt/emulator Unit: machine-qemu\x2d2\x2drhel9.4.scope Slice: machine.slice Boot ID: 2a7bcb0dc2b2436abbacb3aa393dfe7f Machine ID: 09f2cab20f914272bf3d34215f7fe2ab Hostname: dell-per740-03.lab.eng.pek2.redhat.com Storage: /var/lib/systemd/coredump/core.qemu-kvm.0.2a7bcb0dc2b2436abbacb3aa393dfe7f.6701.1701162444000000.zst (present) Size on Disk: 1.5M Message: Process 6701 (qemu-kvm) of user 0 dumped core. Stack trace of thread 6831: #0 0x00007f246e4e265c __pthread_kill_implementation (libc.so.6 + 0xa365c) #1 0x00007f246e493d06 raise (libc.so.6 + 0x54d06) #2 0x00007f246e4677f3 abort (libc.so.6 + 0x287f3) #3 0x00007f246e46771b __assert_fail_base.cold (libc.so.6 + 0x2871b) #4 0x00007f246e48cca6 __assert_fail (libc.so.6 + 0x4dca6) #5 0x00005637a610d8db runstate_set (qemu-kvm + 0x53b8db) #6 0x00005637a613d60c migration_thread (qemu-kvm + 0x56b60c) #7 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #8 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #9 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6720: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a60ffb9b qemu_wait_io_event (qemu-kvm + 0x52db9b) #4 0x00005637a634f161 kvm_vcpu_thread_fn (qemu-kvm + 0x77d161) #5 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #6 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #7 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6721: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a60ffb9b qemu_wait_io_event (qemu-kvm + 0x52db9b) #4 0x00005637a634f161 kvm_vcpu_thread_fn (qemu-kvm + 0x77d161) #5 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #6 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #7 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6722: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a60ffb9b qemu_wait_io_event (qemu-kvm + 0x52db9b) #4 0x00005637a634f161 kvm_vcpu_thread_fn (qemu-kvm + 0x77d161) #5 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #6 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #7 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6723: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a60ffb9b qemu_wait_io_event (qemu-kvm + 0x52db9b) #4 0x00005637a634f161 kvm_vcpu_thread_fn (qemu-kvm + 0x77d161) #5 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #6 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #7 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6724: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a60ffb9b qemu_wait_io_event (qemu-kvm + 0x52db9b) #4 0x00005637a634f161 kvm_vcpu_thread_fn (qemu-kvm + 0x77d161) #5 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #6 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #7 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6725: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a60ffb9b qemu_wait_io_event (qemu-kvm + 0x52db9b) #4 0x00005637a634f161 kvm_vcpu_thread_fn (qemu-kvm + 0x77d161) #5 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #6 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #7 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6701: #0 0x00007f246e5819be ppoll (libc.so.6 + 0x1429be) #1 0x00005637a65d64f6 main_loop_wait (qemu-kvm + 0xa044f6) #2 0x00005637a610e637 qemu_main_loop (qemu-kvm + 0x53c637) #3 0x00005637a5f59cba qemu_default_main (qemu-kvm + 0x387cba) #4 0x00007f246e47eeb0 __libc_start_call_main (libc.so.6 + 0x3feb0) #5 0x00007f246e47ef60 __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x3ff60) #6 0x00005637a5f593d5 _start (qemu-kvm + 0x3873d5) Stack trace of thread 6706: #0 0x00007f246e47de5d syscall (libc.so.6 + 0x3ee5d) #1 0x00005637a65bcd4f qemu_event_wait (qemu-kvm + 0x9ead4f) #2 0x00005637a65cae49 call_rcu_thread (qemu-kvm + 0x9f8e49) #3 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #4 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #5 0x00007f246e47e450 __clone3 (libc.so.6 + 0x3f450) Stack trace of thread 6719: #0 0x00007f246e5818bf __poll (libc.so.6 + 0x1428bf) #1 0x00007f246e8751fc g_main_context_iterate.constprop.0 (libglib-2.0.so.0 + 0xaa1fc) #2 0x00007f246e81f5a3 g_main_loop_run (libglib-2.0.so.0 + 0x545a3) #3 0x00005637a63a9dbf iothread_run (qemu-kvm + 0x7d7dbf) #4 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #5 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #6 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) Stack trace of thread 6726: #0 0x00007f246e4dd4aa __futex_abstimed_wait_common (libc.so.6 + 0x9e4aa) #1 0x00007f246e4dfcb0 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0xa0cb0) #2 0x00005637a65bc5d6 qemu_cond_wait_impl (qemu-kvm + 0x9ea5d6) #3 0x00005637a5f96416 vnc_worker_thread.llvm.11853996392063472260 (qemu-kvm + 0x3c4416) #4 0x00005637a65bcfea qemu_thread_start.llvm.17279737596791441160 (qemu-kvm + 0x9eafea) #5 0x00007f246e4e0912 start_thread (libc.so.6 + 0xa1912) #6 0x00007f246e47e314 __clone (libc.so.6 + 0x3f314) ELF object binary architecture: AMD x86-64
(2) The VM xml can be as following:
[1] http://10.73.72.41/log/bug/JIRA-17369/iommu/VM.xml
[2] http://10.73.72.41/log/bug/JIRA-17369/non-iommu/VM.xml