From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tetsuya Mukawa Subject: Re: [PATCH RFC v2 00/12] lib/librte_vhost: vhost-user support Date: Thu, 11 Dec 2014 11:21:33 +0900 Message-ID: <5488FFAD.4070705@igel.co.jp> References: <1418247477-13920-1-git-send-email-huawei.xie@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: "haifeng.lin-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org" To: "Xie, Huawei" , "dev-VfR2kkLFssw@public.gmane.org" Return-path: In-Reply-To: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Hi Xie, (2014/12/11 7:04), Xie, Huawei wrote: > This patch set is based on latest vhost. > It fixes vhost-user memory map/unmap alignment issue. > It uses VHOST_USER_GET_VRING_BASE as the message for vhost device stop= in vhost-user. > It uses VHOST_SET_VRING_KICK as the message that tells us vhost device= is ready in vhost-user. > =09 > Tetsuya: > Your abstraction layer hasn't been integrated due to time issue, so no= w we support both vhost-cuse and vhost-user, but only one driver could be= registered. Thanks, I will be able to submit it after merging these patches. > This is not the final patch, and there might be resource leak issue(whi= ch is critical for vhost enabled switch, as vSwitch needs to run endlessl= y, and virtio in guest VM and VM itself could be restarted repeatedly. Wi= ll take effort to check if all the memory region has been unmapped, and i= f all fds are closed properly in all possible path.) > I have tried to restart virtio-PMD repeatedly and switch between virtio= -PMD and virtio-pci several times, it runs smoothly and no resource leak = so far. I agree with your concerns. I will check it also. > There are other features like multiple socket file, client mode to be s= upported. > > What if the vhost is terminated due to program error? What if vhost nee= ds to be upgraded dynamically? How could we reconnect to virtio frontend?= That is very very important feature if you are working on it. :). Yes, now I am working on it. But I haven't finished my work yet. After finishing, I will send my RFC to start discussion. > Please help review. Sure, I will. :) Thanks, Tetsuya > Thanks! > > =09 > > >> -----Original Message----- >> From: dev [mailto:dev-bounces-VfR2kkLFssw@public.gmane.org] On Behalf Of Huawei Xie >> Sent: Wednesday, December 10, 2014 2:38 PM >> To: dev-VfR2kkLFssw@public.gmane.org >> Cc: haifeng.lin-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org >> Subject: [dpdk-dev] [PATCH RFC v2 00/12] lib/librte_vhost: vhost-user = support >> >> This patchset refines vhost library to support both vhost-cuse and vho= st-user. >> >> >> Huawei Xie (12): >> create vhost_cuse directory and move vhost-net-cdev.c to vhost_cuse >> directory >> rename vhost-net-cdev.h as vhost-net.h >> move eventfd_copy logic out from virtio-net.c to vhost-net-cdev.c >> exact copy of host_memory_map from virtio-net.c to new file >> virtio-net-cdev.c >> host_memory_map refine: map partial memory of target process into cu= rrent >> process >> cuse_set_memory_table is the VHOST_SET_MEMORY_TABLE message handler >> for cuse >> fd management for vhost user >> vhost-user support >> minor fix >> vhost-user memory region map/unmap >> kick/callfd fix >> cleanup when vhost user connection is closed >> >> lib/librte_vhost/Makefile | 5 +- >> lib/librte_vhost/rte_virtio_net.h | 2 + >> lib/librte_vhost/vhost-net-cdev.c | 389 -----------------= ----- >> lib/librte_vhost/vhost-net-cdev.h | 113 ------- >> lib/librte_vhost/vhost-net.h | 117 +++++++ >> lib/librte_vhost/vhost_cuse/vhost-net-cdev.c | 452 >> ++++++++++++++++++++++++++ >> lib/librte_vhost/vhost_cuse/virtio-net-cdev.c | 349 +++++++++++++++++= +++ >> lib/librte_vhost/vhost_cuse/virtio-net-cdev.h | 45 +++ >> lib/librte_vhost/vhost_rxtx.c | 2 +- >> lib/librte_vhost/vhost_user/fd_man.c | 205 ++++++++++++ >> lib/librte_vhost/vhost_user/fd_man.h | 64 ++++ >> lib/librte_vhost/vhost_user/vhost-net-user.c | 423 >> ++++++++++++++++++++++++ >> lib/librte_vhost/vhost_user/vhost-net-user.h | 107 ++++++ >> lib/librte_vhost/vhost_user/virtio-net-user.c | 313 +++++++++++++++++= + >> lib/librte_vhost/vhost_user/virtio-net-user.h | 49 +++ >> lib/librte_vhost/virtio-net.c | 394 ++---------------= ----- >> lib/librte_vhost/virtio-net.h | 43 +++ >> 17 files changed, 2199 insertions(+), 873 deletions(-) >> delete mode 100644 lib/librte_vhost/vhost-net-cdev.c >> delete mode 100644 lib/librte_vhost/vhost-net-cdev.h >> create mode 100644 lib/librte_vhost/vhost-net.h >> create mode 100644 lib/librte_vhost/vhost_cuse/vhost-net-cdev.c >> create mode 100644 lib/librte_vhost/vhost_cuse/virtio-net-cdev.c >> create mode 100644 lib/librte_vhost/vhost_cuse/virtio-net-cdev.h >> create mode 100644 lib/librte_vhost/vhost_user/fd_man.c >> create mode 100644 lib/librte_vhost/vhost_user/fd_man.h >> create mode 100644 lib/librte_vhost/vhost_user/vhost-net-user.c >> create mode 100644 lib/librte_vhost/vhost_user/vhost-net-user.h >> create mode 100644 lib/librte_vhost/vhost_user/virtio-net-user.c >> create mode 100644 lib/librte_vhost/vhost_user/virtio-net-user.h >> create mode 100644 lib/librte_vhost/virtio-net.h >> >> -- >> 1.8.1.4