https://bugs.dpdk.org/show_bug.cgi?id=194
Bug ID: 194 Summary: vhost pmd has become unusable from secondary processes. Product: DPDK Version: 18.11 Hardware: All OS: All Status: CONFIRMED Severity: critical Priority: Normal Component: vhost/virtio Assignee: dev@dpdk.org Reporter: o...@valinux.co.jp Target Milestone: --- This problem was discovered when trying to migrate the base of SPP(http://git.dpdk.org/apps/spp/) from DPDK v18.08 to v18.11. In SPP, secondary processes attach (rte_eal_hotplug_add) and use vhost pmd (ex. devargs: "eth_vhost0,iface=/tmp/sock0,queues=1,client=1"). It was no problem under DPDK v18.08 but secondary processes crash under v18.11. As a result of some investigations, it was found that the direct cause of crash is because no value is set (i.e. null pointer) for [rt]x_pkt_burst member of rte_eth_dev of vhost. Certainly there is no place to set on the code. (Is this comment related to something? https://github.com/DPDK/dpdk/blob/master/drivers/net/vhost/rte_eth_vhost.c#L1352 ) In addition, even if the value is set, it will not work. This is because eth_vhost_[rt]x refers to vid which is the index of vhsot_devices (https://github.com/DPDK/dpdk/blob/master/lib/librte_vhost/vhost.c#L28). vhost_devices is per process data (i.e. not shared data) and the primary process only uses vhost_devices under v18.11 (unlike v18.08) and it is not accessed from secondary processes. Perhaps some fix, such as making vhost_devices a shared data, is necessary. -- You are receiving this mail because: You are the assignee for the bug.