patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Yuanhan Liu <yuanhan.liu@linux.intel.com>
To: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Cc: Ilya Maximets <i.maximets@samsung.com>, dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'vhost: fix fd leaks for vhost-user server mode' has been queued to stable release 17.02.1
Date: Thu, 25 May 2017 17:48:37 +0800	[thread overview]
Message-ID: <1495705809-21416-65-git-send-email-yuanhan.liu@linux.intel.com> (raw)
In-Reply-To: <1495705809-21416-1-git-send-email-yuanhan.liu@linux.intel.com>

Hi,

FYI, your patch has been queued to stable release 17.02.1

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

Thanks.

	--yliu

---
>From 40fcc723ddece3f62830907aefe38d7543f1dd16 Mon Sep 17 00:00:00 2001
From: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Date: Mon, 27 Mar 2017 16:52:15 +0800
Subject: [PATCH] vhost: fix fd leaks for vhost-user server mode

[ upstream commit 65388b43f592e16497af48db69ad5063d6824daf ]

A vhost-user server socket could have many connections, thus many connfd.
However, we currently just use one single int var to store it. Meaning,
it will get overwritten every time a new connection is created.

While this will not create fatal issue as it sounds (since the correct
connfd is closured to the event loop thread by fdset_add), it may cause
fd leaks if a user invokes rte_vhost_driver_unregister before shutting
down all connections: it just closes the recent connfd.

A simple example that should be able to reproduce this leaks issues is,
del the ovs vhost-user port while the connected VMs are still alive. (Note
that it's suggested to use one socket for one VM, which makes the issue
not that fatal as it sounds again).

Since we already use a struct "vhost_user_connection" to track all info
about one connection, it's obvious that we should put the connfd there.
Then we could build a connection list inside the vhost_user_socket struct,
to represent all connections belong that socket file.

Fixes: 164fd396788d ("vhost: fix unregistering in client mode")
Cc: Ilya Maximets <i.maximets@samsung.com>

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
---
 lib/librte_vhost/socket.c | 43 +++++++++++++++++++++++++++++++++----------
 1 file changed, 33 insertions(+), 10 deletions(-)

diff --git a/lib/librte_vhost/socket.c b/lib/librte_vhost/socket.c
index 6a30a31..2afde98 100644
--- a/lib/librte_vhost/socket.c
+++ b/lib/librte_vhost/socket.c
@@ -52,14 +52,18 @@
 #include "vhost.h"
 #include "vhost_user.h"
 
+
+TAILQ_HEAD(vhost_user_connection_list, vhost_user_connection);
+
 /*
  * Every time rte_vhost_driver_register() is invoked, an associated
  * vhost_user_socket struct will be created.
  */
 struct vhost_user_socket {
+	struct vhost_user_connection_list conn_list;
+	pthread_mutex_t conn_mutex;
 	char *path;
 	int listenfd;
-	int connfd;
 	bool is_server;
 	bool reconnect;
 	bool dequeue_zero_copy;
@@ -67,7 +71,10 @@ struct vhost_user_socket {
 
 struct vhost_user_connection {
 	struct vhost_user_socket *vsocket;
+	int connfd;
 	int vid;
+
+	TAILQ_ENTRY(vhost_user_connection) next;
 };
 
 #define MAX_VHOST_SOCKET 1024
@@ -209,19 +216,23 @@ vhost_user_add_connection(int fd, struct vhost_user_socket *vsocket)
 
 	RTE_LOG(INFO, VHOST_CONFIG, "new device, handle is %d\n", vid);
 
-	vsocket->connfd = fd;
+	conn->connfd = fd;
 	conn->vsocket = vsocket;
 	conn->vid = vid;
 	ret = fdset_add(&vhost_user.fdset, fd, vhost_user_read_cb,
 			NULL, conn);
 	if (ret < 0) {
-		vsocket->connfd = -1;
+		conn->connfd = -1;
 		free(conn);
 		close(fd);
 		RTE_LOG(ERR, VHOST_CONFIG,
 			"failed to add fd %d into vhost server fdset\n",
 			fd);
 	}
+
+	pthread_mutex_lock(&vsocket->conn_mutex);
+	TAILQ_INSERT_TAIL(&vsocket->conn_list, conn, next);
+	pthread_mutex_unlock(&vsocket->conn_mutex);
 }
 
 /* call back when there is new vhost-user connection from client  */
@@ -247,10 +258,14 @@ vhost_user_read_cb(int connfd, void *dat, int *remove)
 
 	ret = vhost_user_msg_handler(conn->vid, connfd);
 	if (ret < 0) {
-		vsocket->connfd = -1;
 		close(connfd);
 		*remove = 1;
 		vhost_destroy_device(conn->vid);
+
+		pthread_mutex_lock(&vsocket->conn_mutex);
+		TAILQ_REMOVE(&vsocket->conn_list, conn, next);
+		pthread_mutex_unlock(&vsocket->conn_mutex);
+
 		free(conn);
 
 		if (vsocket->reconnect)
@@ -502,7 +517,8 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
 		goto out;
 	memset(vsocket, 0, sizeof(struct vhost_user_socket));
 	vsocket->path = strdup(path);
-	vsocket->connfd = -1;
+	TAILQ_INIT(&vsocket->conn_list);
+	pthread_mutex_init(&vsocket->conn_mutex, NULL);
 	vsocket->dequeue_zero_copy = flags & RTE_VHOST_USER_DEQUEUE_ZERO_COPY;
 
 	if ((flags & RTE_VHOST_USER_CLIENT) != 0) {
@@ -565,7 +581,7 @@ rte_vhost_driver_unregister(const char *path)
 {
 	int i;
 	int count;
-	struct vhost_user_connection *conn;
+	struct vhost_user_connection *conn, *next;
 
 	pthread_mutex_lock(&vhost_user.mutex);
 
@@ -581,15 +597,22 @@ rte_vhost_driver_unregister(const char *path)
 				vhost_user_remove_reconnect(vsocket);
 			}
 
-			conn = fdset_del(&vhost_user.fdset, vsocket->connfd);
-			if (conn) {
+			pthread_mutex_lock(&vsocket->conn_mutex);
+			for (conn = TAILQ_FIRST(&vsocket->conn_list);
+			     conn != NULL;
+			     conn = next) {
+				next = TAILQ_NEXT(conn, next);
+
+				fdset_del(&vhost_user.fdset, conn->connfd);
 				RTE_LOG(INFO, VHOST_CONFIG,
 					"free connfd = %d for device '%s'\n",
-					vsocket->connfd, path);
-				close(vsocket->connfd);
+					conn->connfd, path);
+				close(conn->connfd);
 				vhost_destroy_device(conn->vid);
+				TAILQ_REMOVE(&vsocket->conn_list, conn, next);
 				free(conn);
 			}
+			pthread_mutex_unlock(&vsocket->conn_mutex);
 
 			free(vsocket->path);
 			free(vsocket);
-- 
1.9.0

  parent reply	other threads:[~2017-05-25  9:51 UTC|newest]

Thread overview: 159+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-25  9:47 [dpdk-stable] patch 'pci: fix device registration on FreeBSD' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'crypto/scheduler: fix include of local headers' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'kni: fix build with kernel 4.11' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'vfio: fix disabling INTx' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'mempool: fix crash when handler not found' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'vfio: fix secondary process start' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'nic_uio: fix device binding at boot' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'examples/ip_fragmentation: fix check of packet type' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'doc: fix a typo in howto guide' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/tap: fix possibly unterminated string' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/i40e: fix TC bitmap of VEB' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/i40e: fix memory allocation for hash table' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/mlx5: fix VLAN stripping indication' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/i40e: fix compile error' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/mlx5: fix startup when flow cannot be applied' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/bnx2x: fix transmit queue free threshold' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/e1000/base: fix multicast setting in VF' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/mlx5: fix supported packets types' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/i40e: fix a typo in flow' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/ixgbe/base: fix build error' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/mlx5: fix flow mark action handling' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/mlx5: fix drop queue creation error' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/mlx5: fix resources free in the right function' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/ixgbe: fix Rx queue blocking issue' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/ixgbe: fix all queues drop setting of DCB' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'net/ixgbe: fix multi-queue mode check in SRIOV mode' " Yuanhan Liu
2017-05-25  9:47 ` [dpdk-stable] patch 'app/testpmd: fix init config for multi-queue " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'app/testpmd: fix TC mapping in DCB init config' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix incorrect packet index reference' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ixgbevf: set xstats id values' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/pcap: fix using mbuf after freeing it' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ena: fix return of hash control flushing' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/vmxnet3: fix queue size changes' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix broadcast promiscuous mode setting' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/thunderx: fix 32-bit build' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/thunderx: fix build on FreeBSD' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/mlx4: update link status upon probing with LSC' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/nfp: clean Tx descriptor flags' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/nfp: fix packet/data length conversion' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/nfp: fix Rx interrupt' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix VLAN filter' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/mlx5: fix reusing Rx/Tx queues' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ixgbe: fix TC bandwidth setting' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/mlx4: fix returned values upon failed probing' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/mlx5: " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/fm10k: fix pointer cast' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/qede: fix missing UDP protocol in RSS offload types' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/qede: fix VF RSS configuration' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/qede: prevent crash while changing MTU dynamically' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/mlx5: fix Tx when first segment size is too short' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/sfc: destroy event queue when Rx queue is released' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/sfc: destroy event queue when Tx " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/sfc: fix leak if EvQ DMA space allocation fails' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/sfc: use correct function to free scattered packet on Rx' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/fm10k: fix secondary process crash' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix VLAN promisc setting' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'vhost: try to shrink pfdset when fdset_add fails' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'vhost: change log levels in client mode' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/virtio-user: fix tapfds close' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/virtio-user: fix overflow' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/virtio: disable LSC interrupt if MSIX not enabled' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'vhost: fix multiple queue not enabled for old kernels' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'vhost: fix max queues' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'vhost: fix false sharing' " Yuanhan Liu
2017-05-25  9:48 ` Yuanhan Liu [this message]
2017-05-25  9:48 ` [dpdk-stable] patch 'net/mlx5: fix an uninitialized variable' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'mk: fix shell errors when building with clang' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'mk: fix lib filtering when linking app' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'app/crypto-perf: fix AES CBC 128 test vectors' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'mk: fix quoting for ARM mtune argument' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'lib: fix IPv6 tunnel checksum' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'app/testpmd: " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'test/mempool: free mempool on exit' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/cxgbe: fix possible null pointer dereference' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix allocation check' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix VF link speed' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: add missing 25G " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/thunderx: use internal byte ordering macros' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix hash input set on X722' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/thunderx: fix stats access out of bounds' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ena: fix Rx descriptors allocation' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ena: fix delayed cleanup of Rx descriptors' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ena: cleanup if refilling of Rx descriptors fails' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ixgbe: fix generic filter return' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/i40e: fix VF link status update' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ixgbe: fix duplicated check' " Yuanhan Liu
2017-05-25  9:48 ` [dpdk-stable] patch 'net/ixgbe: remove tpid check for flow director' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/bonding: allow configuring jumbo frames without slaves' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/mlx4: fix Rx after mbuf alloc failure' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/i40e: ensure vector mode is not used with QinQ' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/sfc: reset RSS channels back to 0 on close' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/virtio: fix queue notify' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/virtio-user: fix address on 32-bit system' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'vhost: fix dequeue zero copy' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'kni: fix ethtool support' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'crypto/scheduler: fix capability update' " Yuanhan Liu
2017-05-26  1:26   ` Zhang, Roy Fan
2017-05-25  9:49 ` [dpdk-stable] patch 'app/crypto-perf: fix crypto operation resubmission' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'crypto/qat: fix AES-GCM authentication length' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'crypto/qat: fix IV zero physical address' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'app/crypto-perf: fix AEAD tests when AAD is zero' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/l2fwd-crypto: " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/l2fwd-crypto: fix padding calculation' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'kni: fix possible memory leak' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples: fix build clean on FreeBSD' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/performance-thread: fix build " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/performance-thread: fix compilation on Suse 11 SP2' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'mbuf: fix missing includes in exported header' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'efd: fix missing include " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'cmdline: fix parsing' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/sfc: fix LSC interrupt support for UIO cases' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/i40e: fix setup when bulk is disabled' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/qede: fix default MAC address handling' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/qede: fix fastpath rings reset phase' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/qede: fix FW version string for VF' " Yuanhan Liu
2017-05-25 17:15   ` Mody, Rasesh
2017-05-25  9:49 ` [dpdk-stable] patch 'net/nfp: fix releasing muti-segment mbufs' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: remove useless item type check' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: fix type check for flow type' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/bonding: fix updating slave link status' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: fix ntuple filter for SCTP' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/virtio: fix MSI-X for modern devices' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/virtio: fix LSC setting' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/virtio: fix crash when closing twice' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'crypto/openssl: fix AAD capabilities for AES-GCM' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'crypto/openssl: fix AES-GCM capability' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'cryptodev: fix API AAD comments' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/l2fwd-crypto: fix packets array index' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'crypto/qat: fix dequeue statistics' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'cryptodev: fix API digest length comments' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'app/testpmd: fix crash at mbuf pool creation' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'app/testpmd: fix exit without freeing resources' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/performance-thread: fix build on FreeBSD 10.0' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/multi_process: fix timer update' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/l3fwd-power: fix handling no Rx queue' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/l3fwd-power: fix Rx descriptor size' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/load_balancer: fix Tx flush' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'examples/ethtool: fix link with ixgbe shared lib' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/thunderx: fix deadlock in Rx path' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'kni: fix crash caused by freeing mempool' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net: fix stripped VLAN flag for offload emulation' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/igb: fix VF MAC address setting' " Yuanhan Liu
2017-05-25  9:49 ` Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: fix default MAC " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: fix VF Rx mode for allmulticast disabled' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: fix setting MTU on stopped device' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/ixgbe: fix memory overflow in 32-bit SSE Rx' " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/i40e: " Yuanhan Liu
2017-05-25  9:49 ` [dpdk-stable] patch 'net/fm10k: " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'net/vmxnet3: fix build with gcc 7' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'test/cmdline: fix missing break in switch' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'app/testpmd: fix stack overwriting by flow command' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'app/testpmd: fix MAC endian in " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'doc: explain zlib dependency for bnx2x' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'eal/bsd: fix ioport write operation' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'eal/bsd: fix read on PCI configuration space' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'net/ixgbe: fix LSC interrupt' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'net/mlx5: fix index handling for Tx ring' " Yuanhan Liu
2017-05-25  9:50 ` [dpdk-stable] patch 'net/mlx5: fix rollback when starting device' " Yuanhan Liu

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=1495705809-21416-65-git-send-email-yuanhan.liu@linux.intel.com \
    --to=yuanhan.liu@linux.intel.com \
    --cc=i.maximets@samsung.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).