patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Kevin Traynor <ktraynor@redhat.com>
To: Maxime Coquelin <maxime.coquelin@redhat.com>
Cc: David Marchand <david.marchand@redhat.com>,
	dpdk stable <stable@dpdk.org>
Subject: patch 'vhost: fix check on virtqueue access in in-flight getter' has been queued to stable release 21.11.6
Date: Thu, 16 Nov 2023 13:22:50 +0000	[thread overview]
Message-ID: <20231116132348.557257-8-ktraynor@redhat.com> (raw)
In-Reply-To: <20231116132348.557257-1-ktraynor@redhat.com>

Hi,

FYI, your patch has been queued to stable release 21.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/21/23. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/587aea0f91f7170f6812d248915f0c60aed3057d

Thanks.

Kevin

---
From 587aea0f91f7170f6812d248915f0c60aed3057d Mon Sep 17 00:00:00 2001
From: Maxime Coquelin <maxime.coquelin@redhat.com>
Date: Fri, 20 Oct 2023 10:48:02 +0200
Subject: [PATCH] vhost: fix check on virtqueue access in in-flight getter

[ upstream commit 288cd1f8ca3ebaf20aeed92966da9020a5793852 ]

Acquiring the access lock is not enough to ensure
virtqueue's metadata such as vring pointers are valid.

The access status must also be checked.

Fixes: 0c0935c5f794 ("vhost: allow to check in-flight packets for async vhost")

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: David Marchand <david.marchand@redhat.com>
---
 lib/vhost/vhost.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/vhost/vhost.c b/lib/vhost/vhost.c
index 038baf53fd..8a20efa7c4 100644
--- a/lib/vhost/vhost.c
+++ b/lib/vhost/vhost.c
@@ -1930,7 +1930,13 @@ rte_vhost_async_get_inflight(int vid, uint16_t queue_id)
 	}
 
+	if (unlikely(!vq->access_ok)) {
+		ret = -1;
+		goto out_unlock;
+	}
+
 	if (vq->async)
 		ret = vq->async->pkts_inflight_n;
 
+out_unlock:
 	rte_spinlock_unlock(&vq->access_lock);
 
-- 
2.41.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2023-11-16 13:21:52.776415453 +0000
+++ 0008-vhost-fix-check-on-virtqueue-access-in-in-flight-get.patch	2023-11-16 13:21:52.402946235 +0000
@@ -1 +1 @@
-From 288cd1f8ca3ebaf20aeed92966da9020a5793852 Mon Sep 17 00:00:00 2001
+From 587aea0f91f7170f6812d248915f0c60aed3057d Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 288cd1f8ca3ebaf20aeed92966da9020a5793852 ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index 53318a54a3..f86516324b 100644
+index 038baf53fd..8a20efa7c4 100644
@@ -24 +25 @@
-@@ -2076,7 +2076,13 @@ rte_vhost_async_get_inflight(int vid, uint16_t queue_id)
+@@ -1930,7 +1930,13 @@ rte_vhost_async_get_inflight(int vid, uint16_t queue_id)
@@ -36 +37 @@
- 	rte_rwlock_write_unlock(&vq->access_lock);
+ 	rte_spinlock_unlock(&vq->access_lock);


  parent reply	other threads:[~2023-11-16 13:24 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-16 13:22 patch 'eventdev: fix device pointer for vdev-based devices' " Kevin Traynor
2023-11-16 13:22 ` patch 'eventdev: fix missing driver names in info struct' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/virtio: fix missing next flag in Tx packed ring' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/virtio: fix link state interrupt vector setting' " Kevin Traynor
2023-11-16 13:22 ` patch 'vhost: fix missing vring call check on virtqueue access' " Kevin Traynor
2023-11-16 13:22 ` patch 'vhost: fix missing " Kevin Traynor
2023-11-16 13:22 ` patch 'vhost: fix check on virtqueue access in async registration' " Kevin Traynor
2023-11-16 13:22 ` Kevin Traynor [this message]
2023-11-16 13:22 ` patch 'common/cnxk: fix pool buffer size in opaque mode' " Kevin Traynor
2023-11-16 13:22 ` patch 'ethdev: fix function name in comment' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/hns3: fix typo in function name' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/hns3: fix unchecked Rx free threshold' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/hns3: fix double stats for IMP and global reset' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/hns3: remove reset log in secondary' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/hns3: fix multiple reset detected log' " Kevin Traynor
2023-11-16 13:22 ` patch 'net/hns3: refactor interrupt state query' " Kevin Traynor
2023-11-16 13:22 ` patch 'test/bonding: remove unreachable statement' " Kevin Traynor
2023-11-16 13:23 ` patch 'test/bonding: add missing check' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/bonding: fix possible overrun' " Kevin Traynor
2023-11-16 13:23 ` patch 'ethdev: fix 32-bit build with GCC 13' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/enic: avoid extra unlock in MTU set' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/hns3: fix some return values' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/hns3: fix some error logs' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/hns3: keep set/get algo key functions local' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/hns3: fix uninitialized hash algo value' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/tap: fix L4 checksum offloading' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/tap: fix IPv4 " Kevin Traynor
2023-11-16 13:23 ` patch 'app/procinfo: fix RSS info' " Kevin Traynor
2023-11-16 13:23 ` patch 'app/procinfo: adjust format of " Kevin Traynor
2023-11-16 13:23 ` patch 'net/tap: fix RSS for fragmented packets' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix decap action checking in sample flow' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix E-Switch mirror flow rule validation' " Kevin Traynor
2023-11-16 13:23 ` patch 'common/mlx5: fix controller index parsing' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/ice: fix L1 check interval' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/iavf: fix Tx offload mask' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/iavf: fix indent in Tx path' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/iavf: fix Tx offload flags check' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/ice: fix DCF port statistics' " Kevin Traynor
2023-11-16 13:23 ` patch 'crypto/nitrox: fix panic with high number of segments' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/iavf: fix Tx preparation' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/ice: " Kevin Traynor
2023-11-16 13:23 ` patch 'config/arm: fix aarch32 build with GCC 13' " Kevin Traynor
2023-11-16 13:23 ` patch 'build: add libarchive to optional external dependencies' " Kevin Traynor
2023-11-17  9:00   ` Richardson, Bruce
2023-11-20 13:58     ` Kevin Traynor
2023-11-16 13:23 ` patch 'app/dumpcap: fix mbuf pool ring type' " Kevin Traynor
2023-11-16 13:23 ` patch 'event/dlb2: fix name check in self-test' " Kevin Traynor
2023-11-16 13:23 ` patch 'test/bbdev: fix Python script subprocess' " Kevin Traynor
2023-11-16 13:23 ` patch 'test/bbdev: assert failed test for queue configure' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/ice: fix crash on closing representor ports' " Kevin Traynor
2023-11-16 13:23 ` patch 'event/dlb2: fix missing queue ordering capability flag' " Kevin Traynor
2023-11-16 13:23 ` patch 'meter: fix RFC4115 trTCM API Doxygen' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/sfc: remove null dereference in log' " Kevin Traynor
2023-11-16 13:23 ` patch 'app/testpmd: remove useless check in TSO command' " Kevin Traynor
2023-11-16 13:23 ` patch 'ethdev: account for smaller MTU when setting default' " Kevin Traynor
2023-11-16 13:23 ` patch 'test/bonding: fix uninitialized RSS configuration' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/hns3: fix mailbox sync' " Kevin Traynor
2023-11-16 13:23 ` patch 'app/testpmd: fix tunnel TSO capability check' " Kevin Traynor
2023-11-16 13:23 ` patch 'app/testpmd: add explicit check for tunnel TSO' " Kevin Traynor
2023-11-16 13:23 ` patch 'app/testpmd: fix tunnel TSO configuration' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix validation of sample encap flow action' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix use after free on Rx queue start' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix hairpin queue states' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix multi-segment Tx inline data length' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: fix shared Rx queue list management' " Kevin Traynor
2023-11-16 13:23 ` patch 'net/mlx5: zero UDP checksum over IPv4 in encapsulation' " Kevin Traynor

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=20231116132348.557257-8-ktraynor@redhat.com \
    --to=ktraynor@redhat.com \
    --cc=david.marchand@redhat.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=stable@dpdk.org \
    /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).