[dpdk-stable] patch 'vhost: fix zero-copy server mode' has been queued to LTS release 18.11.9

Kevin Traynor ktraynor at redhat.com
Fri Jun 5 20:25:11 CEST 2020


Hi,

FYI, your patch has been queued to LTS release 18.11.9

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

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

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/304c6b09f4ec37f9552d5a1083483251893a5c45

Thanks.

Kevin.

---
>From 304c6b09f4ec37f9552d5a1083483251893a5c45 Mon Sep 17 00:00:00 2001
From: Xuan Ding <xuan.ding at intel.com>
Date: Tue, 19 May 2020 10:15:46 +0000
Subject: [PATCH] vhost: fix zero-copy server mode

[ upstream commit 22fa1bcbcbc7489304a711c39aea9a1593a873a5 ]

This patch fixes the situation where vhost-user cannot start as server
with dequeue_zero_copy enabled.

Using flag instead of vsocket->is_server to determine whether vhost-user
is in client mode. Because vsocket->is_server is not ready at this time.

Fixes: 715070ea10e6 ("vhost: prevent zero-copy with incompatible client mode")

Signed-off-by: Xuan Ding <xuan.ding at intel.com>
Acked-by: Xiaolong Ye <xiaolong.ye at intel.com>
Tested-by: Yinan Wang <yinan.wang at intel.com>
---
 lib/librte_vhost/socket.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_vhost/socket.c b/lib/librte_vhost/socket.c
index fb946e8c54..4819d31737 100644
--- a/lib/librte_vhost/socket.c
+++ b/lib/librte_vhost/socket.c
@@ -891,5 +891,5 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
 	 */
 	if (vsocket->dequeue_zero_copy) {
-		if (!vsocket->is_server) {
+		if ((flags & RTE_VHOST_USER_CLIENT) != 0) {
 			RTE_LOG(ERR, VHOST_CONFIG,
 			"error: zero copy is incompatible with vhost client mode\n");
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-06-05 19:20:54.894176540 +0100
+++ 0074-vhost-fix-zero-copy-server-mode.patch	2020-06-05 19:20:50.977037019 +0100
@@ -1 +1 @@
-From 22fa1bcbcbc7489304a711c39aea9a1593a873a5 Mon Sep 17 00:00:00 2001
+From 304c6b09f4ec37f9552d5a1083483251893a5c45 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 22fa1bcbcbc7489304a711c39aea9a1593a873a5 ]
+
@@ -13 +14,0 @@
-Cc: stable at dpdk.org
@@ -23 +24 @@
-index bb8d0d7801..0a66ef9767 100644
+index fb946e8c54..4819d31737 100644
@@ -26,3 +27,3 @@
-@@ -927,5 +927,5 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
- 			goto out_mutex;
- 		}
+@@ -891,5 +891,5 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
+ 	 */
+ 	if (vsocket->dequeue_zero_copy) {
@@ -31 +32 @@
- 			VHOST_LOG_CONFIG(ERR,
+ 			RTE_LOG(ERR, VHOST_CONFIG,



More information about the stable mailing list