From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: Xueming Li <xuemingl@nvidia.com>, dev@dpdk.org
Cc: Matan Azrad <matan@nvidia.com>,
Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Subject: Re: [dpdk-dev] [PATCH 1/2] vdpa/mlx5: workaround FW first completion in start
Date: Wed, 13 Oct 2021 11:55:58 +0200 [thread overview]
Message-ID: <d6ea8cdd-4bf6-4075-4f95-32b39d25dc9f@redhat.com> (raw)
In-Reply-To: <20210923081758.178745-1-xuemingl@nvidia.com>
Hi Xueming,
On 9/23/21 10:17, Xueming Li wrote:
> After a vDPA application restart, qemu restores VQ with used and
> available index, new incoming packet triggers virtio driver to
> handle buffers. Under heavy traffic, no available buffer for
> firmware to receive new packets, no Rx interrupts generated,
> driver is stuck on endless interrupt waiting.
>
> As a firmware workaround, this patch sends a notification after
> VQ setup to ask driver handling buffers and filling new buffers.
>
> Signed-off-by: Xueming Li <xuemingl@nvidia.com>
> Reviewed-by: Matan Azrad <matan@nvidia.com>
> ---
> drivers/vdpa/mlx5/mlx5_vdpa_virtq.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/vdpa/mlx5/mlx5_vdpa_virtq.c b/drivers/vdpa/mlx5/mlx5_vdpa_virtq.c
> index f530646058..71470d23d9 100644
> --- a/drivers/vdpa/mlx5/mlx5_vdpa_virtq.c
> +++ b/drivers/vdpa/mlx5/mlx5_vdpa_virtq.c
> @@ -4,6 +4,7 @@
> #include <string.h>
> #include <unistd.h>
> #include <sys/mman.h>
> +#include <sys/eventfd.h>
>
> #include <rte_malloc.h>
> #include <rte_errno.h>
> @@ -367,6 +368,9 @@ mlx5_vdpa_virtq_setup(struct mlx5_vdpa_priv *priv, int index)
> goto error;
> }
> virtq->stopped = false;
> + /* Initial notification to ask qemu handling completed buffers. */
> + if (virtq->eqp.cq.callfd != -1)
> + eventfd_write(virtq->eqp.cq.callfd, (eventfd_t)1);
> DRV_LOG(DEBUG, "vid %u virtq %u was created successfully.", priv->vid,
> index);
> return 0;
>
Maybe this patch should be backported to stable branch?
If so, could you reply with the Fixes tag so that I can add it while
applying?
Thanks,
Maxime
next prev parent reply other threads:[~2021-10-13 9:56 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-23 8:17 Xueming Li
2021-09-23 8:17 ` [dpdk-dev] [PATCH 2/2] vdpa/mlx5: retry VAR allocation during vDPA restart Xueming Li
2021-10-13 10:06 ` Maxime Coquelin
2021-10-13 10:14 ` Xueming(Steven) Li
2021-10-13 9:55 ` Maxime Coquelin [this message]
2021-10-15 13:43 ` [dpdk-dev] [PATCH v1 1/2] vdpa/mlx5: workaround FW first completion in start Xueming Li
2021-10-15 13:43 ` [dpdk-dev] [PATCH v1 2/2] vdpa/mlx5: retry VAR allocation during vDPA restart Xueming Li
2021-10-15 13:57 ` [dpdk-dev] [PATCH v1 1/2] vdpa/mlx5: workaround FW first completion in start Maxime Coquelin
2021-10-15 14:51 ` Xueming(Steven) Li
2021-10-15 15:05 ` [dpdk-dev] [PATCH v2 " Xueming Li
2021-10-15 15:05 ` [dpdk-dev] [PATCH v2 2/2] vdpa/mlx5: retry VAR allocation during vDPA restart Xueming Li
2021-10-21 9:40 ` Maxime Coquelin
2021-10-21 12:27 ` Maxime Coquelin
2021-10-21 9:40 ` [dpdk-dev] [PATCH v2 1/2] vdpa/mlx5: workaround FW first completion in start Maxime Coquelin
2021-10-21 12:27 ` Maxime Coquelin
2021-10-21 12:36 ` Xueming(Steven) Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d6ea8cdd-4bf6-4075-4f95-32b39d25dc9f@redhat.com \
--to=maxime.coquelin@redhat.com \
--cc=dev@dpdk.org \
--cc=matan@nvidia.com \
--cc=viacheslavo@nvidia.com \
--cc=xuemingl@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).