On 11/06/2017 04:26 AM, Yao, Lei A wrote:
Hi, Maxime
-----Original Message-----
From: Maxime Coquelin [mailto:maxime.coque...@redhat.com]
Sent: Friday, November 3, 2017 11:57 PM
To: dev@dpdk.org; y...@fridaylinux.org; Yao, Lei A <lei.a....@intel.com>
Cc: m...@redhat.com
Subject: Re: [PATCH] vhost: postpone ring addresses translations at kick time
only
Hi Lei,
On 11/03/2017 04:52 PM, Maxime Coquelin wrote:
If multiple queue pairs are created but all are not used, the
device is never started, as unused queues aren't enabled and
their ring addresses aren't translated. The device is changed
to running state when all rings addresses are translated.
This patch fixes this by postponning rings addresses translation
at kick time unconditionnaly, VHOST_USER_F_PROTOCOL_FEATURES
being negotiated or not.
Reported-by: Lei Yao<lei.a....@intel.com>
Signed-off-by: Maxime Coquelin<maxime.coque...@redhat.com>
---
lib/librte_vhost/vhost_user.c | 33 ++++++++-------------------------
1 file changed, 8 insertions(+), 25 deletions(-)
Could you confirm the patch fixes the issue on your side?
I tested below cases with and without IOMMU:
- Host DPDK queues = 1 / QEMU queues = 1 / Guest DPDK queues = 1
- Host DPDK queues = 2 / QEMU queues = 2 / Guest DPDK queues = 1
- Host DPDK queues = 2 / QEMU queues = 2 / Guest DPDK queues = 2
Thanks,
Maxime
Thanks for your patch. I test my test cases with your patch based on v17.11-rc2,
It can fix my issue here.
Thanks for the testing!
Maxime
BRs
Lei