[dpdk-stable] patch 'vhost: fix features definition location' has been queued to stable release 19.11.4

luca.boccassi at gmail.com luca.boccassi at gmail.com
Fri Jul 24 13:58:28 CEST 2020


Hi,

FYI, your patch has been queued to stable release 19.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/26/20. 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.

Thanks.

Luca Boccassi

---
>From 4727f70f066486f5a749a73637216067f9c73dc1 Mon Sep 17 00:00:00 2001
From: Matan Azrad <matan at mellanox.com>
Date: Thu, 18 Jun 2020 19:08:20 +0000
Subject: [PATCH] vhost: fix features definition location

[ upstream commit da2b788041d2becb6ffa44b16456bd2041119269 ]

The vhost library provide an infrastructure in order to help the DPDK
users to manage vhost devices.

One of the infrastructure parts is the features enablement APIs.

Some features bits may be defined only in the internal file vhost.h in
case the kernel version doesn't include them.

Hence, user running on old kernel may not be able to manage thus
features.

Move all the feature bits definitions to the API file rte_vhost.h.

Fixes: db69be54b6ff ("vhost: hide internal code")
Fixes: 8d286dbeb8d7 ("vhost: fix multiple queue not enabled for old kernels")
Fixes: 3d3c6590b58c ("vhost: enable virtio MTU feature")
Fixes: 704098fc478c ("vhost: fix build with old kernels")

Signed-off-by: Matan Azrad <matan at mellanox.com>
Reviewed-by: Chenbo Xia <chenbo.xia at intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin at redhat.com>
---
 lib/librte_vhost/rte_vhost.h | 17 +++++++++++++++++
 lib/librte_vhost/vhost.h     | 17 -----------------
 2 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/lib/librte_vhost/rte_vhost.h b/lib/librte_vhost/rte_vhost.h
index 532ee0dec..53a30a062 100644
--- a/lib/librte_vhost/rte_vhost.h
+++ b/lib/librte_vhost/rte_vhost.h
@@ -35,6 +35,23 @@ extern "C" {
 /* support only linear buffers (no chained mbufs) */
 #define RTE_VHOST_USER_LINEARBUF_SUPPORT	(1ULL << 6)
 
+/* Features. */
+#ifndef VIRTIO_NET_F_GUEST_ANNOUNCE
+ #define VIRTIO_NET_F_GUEST_ANNOUNCE 21
+#endif
+
+#ifndef VIRTIO_NET_F_MQ
+ #define VIRTIO_NET_F_MQ		22
+#endif
+
+#ifndef VIRTIO_NET_F_MTU
+ #define VIRTIO_NET_F_MTU 3
+#endif
+
+#ifndef VIRTIO_F_ANY_LAYOUT
+ #define VIRTIO_F_ANY_LAYOUT		27
+#endif
+
 /** Protocol features. */
 #ifndef VHOST_USER_PROTOCOL_F_MQ
 #define VHOST_USER_PROTOCOL_F_MQ	0
diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h
index 844904ca3..deeca18f8 100644
--- a/lib/librte_vhost/vhost.h
+++ b/lib/librte_vhost/vhost.h
@@ -202,26 +202,9 @@ struct vhost_virtqueue {
 	TAILQ_HEAD(, vhost_iotlb_entry) iotlb_pending_list;
 } __rte_cache_aligned;
 
-/* Old kernels have no such macros defined */
-#ifndef VIRTIO_NET_F_GUEST_ANNOUNCE
- #define VIRTIO_NET_F_GUEST_ANNOUNCE 21
-#endif
-
-#ifndef VIRTIO_NET_F_MQ
- #define VIRTIO_NET_F_MQ		22
-#endif
-
 #define VHOST_MAX_VRING			0x100
 #define VHOST_MAX_QUEUE_PAIRS		0x80
 
-#ifndef VIRTIO_NET_F_MTU
- #define VIRTIO_NET_F_MTU 3
-#endif
-
-#ifndef VIRTIO_F_ANY_LAYOUT
- #define VIRTIO_F_ANY_LAYOUT		27
-#endif
-
 /* Declare IOMMU related bits for older kernels */
 #ifndef VIRTIO_F_IOMMU_PLATFORM
 
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-24 12:53:51.283017658 +0100
+++ 0070-vhost-fix-features-definition-location.patch	2020-07-24 12:53:48.295006608 +0100
@@ -1,8 +1,10 @@
-From da2b788041d2becb6ffa44b16456bd2041119269 Mon Sep 17 00:00:00 2001
+From 4727f70f066486f5a749a73637216067f9c73dc1 Mon Sep 17 00:00:00 2001
 From: Matan Azrad <matan at mellanox.com>
 Date: Thu, 18 Jun 2020 19:08:20 +0000
 Subject: [PATCH] vhost: fix features definition location
 
+[ upstream commit da2b788041d2becb6ffa44b16456bd2041119269 ]
+
 The vhost library provide an infrastructure in order to help the DPDK
 users to manage vhost devices.
 
@@ -20,7 +22,6 @@
 Fixes: 8d286dbeb8d7 ("vhost: fix multiple queue not enabled for old kernels")
 Fixes: 3d3c6590b58c ("vhost: enable virtio MTU feature")
 Fixes: 704098fc478c ("vhost: fix build with old kernels")
-Cc: stable at dpdk.org
 
 Signed-off-by: Matan Azrad <matan at mellanox.com>
 Reviewed-by: Chenbo Xia <chenbo.xia at intel.com>
@@ -31,10 +32,10 @@
  2 files changed, 17 insertions(+), 17 deletions(-)
 
 diff --git a/lib/librte_vhost/rte_vhost.h b/lib/librte_vhost/rte_vhost.h
-index 2fbc36464..8a5c332c8 100644
+index 532ee0dec..53a30a062 100644
 --- a/lib/librte_vhost/rte_vhost.h
 +++ b/lib/librte_vhost/rte_vhost.h
-@@ -36,6 +36,23 @@ extern "C" {
+@@ -35,6 +35,23 @@ extern "C" {
  /* support only linear buffers (no chained mbufs) */
  #define RTE_VHOST_USER_LINEARBUF_SUPPORT	(1ULL << 6)
  
@@ -59,10 +60,10 @@
  #ifndef VHOST_USER_PROTOCOL_F_MQ
  #define VHOST_USER_PROTOCOL_F_MQ	0
 diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h
-index a0fe703ee..034463699 100644
+index 844904ca3..deeca18f8 100644
 --- a/lib/librte_vhost/vhost.h
 +++ b/lib/librte_vhost/vhost.h
-@@ -204,26 +204,9 @@ struct vhost_virtqueue {
+@@ -202,26 +202,9 @@ struct vhost_virtqueue {
  	TAILQ_HEAD(, vhost_iotlb_entry) iotlb_pending_list;
  } __rte_cache_aligned;
  


More information about the stable mailing list