[dpdk-dev] [PATCH] bus/vdev: scan and probe vdev in secondary processes

Kyle Larose klarose at sandvine.com
Thu Nov 30 23:27:28 CET 2017


Hey Jianfeng,

> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Jianfeng Tan
> Sent: Thursday, November 30, 2017 1:59 PM
> To: dev at dpdk.org
> Cc: Jianfeng Tan
> Subject: [dpdk-dev] [PATCH] bus/vdev: scan and probe vdev in
> secondary processes
> 
> Base on primary/secondary communication channel [1], we add vdev
> action to scan virtual devices in secondary processes.
> 
>   [1] http://dpdk.org/dev/patchwork/patch/31838/
> 
> Signed-off-by: Jianfeng Tan <jianfeng.tan at intel.com>
> ---
>  drivers/bus/vdev/vdev.c | 104
> ++++++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 100 insertions(+), 4 deletions(-)
> 



We recently stumbled across a problem where running dpdk-pdump against
a primary which had an rte_eth_bond virtual device would lead to a crash.

We realized this was happening because the vdev bus wasn't being built
properly on the secondary, leading to it corrupting the ethdev structures
for the eth_bond device on the primary. This corruption occurred because pdump
used what it thought was the first free dpdk port id for its pcap_pmd. That 
port id collided with the eth_bond pmd, causing the problem.

My feeling is that this patch will fix that problem, since probing the virtual
bus from the primary, rather than just from the eal cmdline arguments, will 
allow the secondary to choose an used port id. Am I correct in my understanding?

Thanks,

Kyle




More information about the dev mailing list