Bug 1799017
| Summary: | [RHEL7] Both qemu and guest hang after migrating guest in which vhost-user NIC is using virtio-pci [ovs2.12] | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux Fast Datapath | Reporter: | Pei Zhang <pezhang> | |
| Component: | openvswitch2.12 | Assignee: | Maxime Coquelin <maxime.coquelin> | |
| Status: | CLOSED ERRATA | QA Contact: | Pei Zhang <pezhang> | |
| Severity: | high | Docs Contact: | ||
| Priority: | high | |||
| Version: | FDP 20.A | CC: | chayang, ctrautma, jhsiao, jinzhao, juzhang, kfida, maxime.coquelin, ovs-team, ralongi, tredaelli | |
| Target Milestone: | --- | Keywords: | Regression | |
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | 2.12.0-22 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | 1798996 | |||
| : | 1806599 1807129 (view as bug list) | Environment: | ||
| Last Closed: | 2020-03-10 09:36:07 UTC | Type: | --- | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | 1798996 | |||
| Bug Blocks: | 1806599 | |||
|
Description
Pei Zhang
2020-02-06 13:23:43 UTC
Fix posted upstream in merged in master:
commit 4f37df14c405b754b5e971c75f4f67f4bb5bfdde
Author: Adrian Moreno <amorenoz>
Date: Thu Feb 13 11:04:58 2020 +0100
vhost: protect log address translation in IOTLB update
Currently, the log address translation only happens in the vhost-user's
translate_ring_addresses(). However, the IOTLB update handler is not
checking if it was mapped to re-trigger that translation.
Since the log address mapping could fail, check it on iotlb updates.
Also, check it on vring_translate() so we do not dirty pages if the
logging address is not yet ready.
Additionally, properly protect the accesses to the iotlb structures.
Fixes: fbda9f145927 ("vhost: translate incoming log address to GPA")
Cc: stable
Signed-off-by: Adrian Moreno <amorenoz>
Reviewed-by: Maxime Coquelin <maxime.coquelin>
Backported two patches: - "vhost: fix vring memory partially mapped" - "vhost: protect log address translation in IOTLB update" Verified with openvswitch2.12-2.12.0-22.el7fdp.x86_64: All migration test cases get PASS. And all ovs related cases from Virt get PASS. ==Results== Testcase: live_migration_nonrt_server_2Q_1G_ovs =======================Stream Rate: 1Mpps========================= No Stream_Rate Downtime Totaltime Ping_Loss moongen_Loss 0 1Mpps 139 17310 0 445729 1 1Mpps 216 17013 0 583063 2 1Mpps 131 16891 0 403197 3 1Mpps 123 16328 0 397089 Max 1Mpps 216 17310 0 583063 Min 1Mpps 123 16328 0 397089 Mean 1Mpps 152 16885 0 457269 Median 1Mpps 135 16952 0 424463 Stdev 0 43.0 411.22 0.0 86607.77 Testcase: live_migration_nonrt_server_1Q_2M_ovs =======================Stream Rate: 1Mpps========================= No Stream_Rate Downtime Totaltime Ping_Loss moongen_Loss 0 1Mpps 214 13845 0 576843 1 1Mpps 185 13322 0 520091 2 1Mpps 147 13190 0 517638 3 1Mpps 188 12802 0 603648 Max 1Mpps 214 13845 0 603648 Min 1Mpps 147 12802 0 517638 Mean 1Mpps 183 13289 0 554555 Median 1Mpps 186 13256 0 548467 Stdev 0 27.6 430.97 0.0 42651.73 Testcase: live_migration_nonrt_server_1Q_1G_ovs =======================Stream Rate: 1Mpps========================= No Stream_Rate Downtime Totaltime Ping_Loss moongen_Loss 0 1Mpps 93 16691 0 346389 1 1Mpps 76 16684 0 302814 2 1Mpps 83 16672 0 307876 3 1Mpps 77 16860 0 300856 Max 1Mpps 93 16860 0 346389 Min 1Mpps 76 16672 0 300856 Mean 1Mpps 82 16726 0 314483 Median 1Mpps 80 16687 0 305345 Stdev 0 7.81 89.18 0.0 21474.84 Testcase: nfv_acceptance_nonrt_server_2Q_1G Packets_loss Frame_Size Run_No Throughput Avg_Throughput 0 64 0 21.739722 21.739722 Testcase: vhostuser_reconnect_nonrt_ovs Packets_loss Frame_Size Run_No Throughput Avg_Throughput 0 64 0 21.307393 21.307393 0 64 0 21.614409 21.614409 0 64 0 21.739724 21.739724 Testcase: vhostuser_hotplug_nonrt_server Packets_loss Frame_Size Run_No Throughput Avg_Throughput 0 64 0 21.307432 21.307432 Testcase: vhostuser_reconnect_nonrt_qemu Packets_loss Frame_Size Run_No Throughput Avg_Throughput 0 64 0 21.307393 21.307393 0 64 0 21.614451 21.614451 0 64 0 21.307427 21.307427 Versions: 3.10.0-1127.el7.x86_64 dpdk-18.11.2-1.el7.x86_64 qemu-kvm-rhev-2.12.0-44.el7.x86_64 openvswitch-selinux-extra-policy-1.0-15.el7fdp.noarch tuned-2.11.0-8.el7.noarch openvswitch2.12-2.12.0-22.el7fdp.x86_64 libvirt-4.5.0-33.el7.x86_64 So this bug has been fixed very well. Move to 'Verified'. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:0745 |