Host OpenVSwitch+DPDK process can segfault from a VM running DPDK-enabled application
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Released
|
High
|
Maria Zlatkova |
Bug Description
Description:
Due to a bug in DPDK prior to 16.04, a dpdk-enabled process running in VM can crash host dpdk-enabled OpenVSwitch process. Detailed description can be found here: http://
Steps to reproduce:
1. Enable experimental features on MOS 9.0 Fuel Master
2. Deploy a compute node with configured DPDK
3. Create a VM on the compute node
4. Download and compile DPDK ver <= 2.2 on the VM
5. Follow instructions from link above
Expected result:
Host OVS process is not affected
Actual result:
Host OVS crashes with segfault after second port initialization
OVS+DPDK pmd segfault on host also could be reproduces next way:
1. Enable experimental features on MOS 9.0 Fuel Master
2. Deploy a compute node with configured DPDK
3. Create a VM on the compute node. Add one extra interface.
4. Download and compile DPDK
5. Download DPDK-based application. 100% reproducebility achieved with pktgen-dpdk. http://
6. Start DPDk-based application with extra interface attached to DPDK on guest.
7. Enable high workload traffic on the interface that attached to DPDK on guest.
8. Kill DPDK-based application
9. Start DPDK-based application immediately.
Expected result:
Host OVS process is not affected
Actual result:
Host OVS crashes with segfault after DPDK-based app init.
Changed in fuel: | |
status: | New → In Progress |
Changed in fuel: | |
importance: | Undecided → High |
description: | updated |
tags: | added: release-notes |
Changed in fuel: | |
assignee: | Sergey Matov (smatov) → Fuel Documentation Team (fuel-docs) |
tags: |
added: release-notes-done removed: release-notes |
Changed in fuel: | |
assignee: | Fuel Documentation Team (fuel-docs) → Maria Zlatkova (mzlatkova) |
status: | In Progress → Fix Released |
Described bug is partly fixed by /review. fuel-infra. org/#/c/ 25699/
https:/
Re-init of testpmd ports does not cause segfault anymore.
For the situation where DPDK-based application on guest stops incorrectly(e.g. killing pid) and re-starts after we are awaiting fix in new versions of DPDK. To avoid segfault of host vswitchd process segfault after re-starting guest DPDK-based app HugePages for guest application should be freed(or re-mounted).
Appropriate information will be added to the release notes.