From mboxrd@z Thu Jan 1 00:00:00 1970
From: bugzilla@dpdk.org
Subject: [Bug 194] vhost pmd has become unusable from secondary
processes.
Date: Mon, 21 Jan 2019 05:45:06 +0000
Message-ID:
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
To: dev@dpdk.org
Return-path:
List-Id: DPDK patches and discussions
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Errors-To: dev-bounces@dpdk.org
Sender: "dev"
https://bugs.dpdk.org/show_bug.cgi?id=3D194
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: oda@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=3D/tmp/sock0,queues=3D1,client=3D1").
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 c=
rash
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=20
secondary processes.
Perhaps some fix, such as making vhost_devices a shared data, is necessary.
--=20
You are receiving this mail because:
You are the assignee for the bug.=