From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:44906) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UP4kn-0003DI-Lj for qemu-devel@nongnu.org; Mon, 08 Apr 2013 01:36:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UP4ki-00036y-GG for qemu-devel@nongnu.org; Mon, 08 Apr 2013 01:36:29 -0400 Received: from e28smtp04.in.ibm.com ([122.248.162.4]:47126) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UP4kh-00035O-QW for qemu-devel@nongnu.org; Mon, 08 Apr 2013 01:36:24 -0400 Received: from /spool/local by e28smtp04.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 8 Apr 2013 11:02:23 +0530 Received: from d28relay03.in.ibm.com (d28relay03.in.ibm.com [9.184.220.60]) by d28dlp03.in.ibm.com (Postfix) with ESMTP id 99D4F125804F for ; Mon, 8 Apr 2013 11:07:37 +0530 (IST) Received: from d28av01.in.ibm.com (d28av01.in.ibm.com [9.184.220.63]) by d28relay03.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r385a8Cm11141538 for ; Mon, 8 Apr 2013 11:06:08 +0530 Received: from d28av01.in.ibm.com (loopback [127.0.0.1]) by d28av01.in.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id r385aBgH004793 for ; Mon, 8 Apr 2013 05:36:12 GMT From: Liu Ping Fan Date: Mon, 8 Apr 2013 13:36:03 +0800 Message-Id: <1365399368-26967-1-git-send-email-pingfank@linux.vnet.ibm.com> Subject: [Qemu-devel] [RFC PATCH v3 0/5] port network layer onto glib List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Paolo Bonzini , Stefan Hajnoczi , Anthony Liguori , mdroth This series focus on network backend (excluding slirp). The related patch for core's re-entrant (queue.c net.c) will be sent out separatelly. The choice between GSource or AioContext is not decided yet. If we choose AioContext, I think we need to expand extra interface for readable() and writable(). readable() is different from io_flush, which causes block for sync, but this sync is not neccessary for NetWork. v2->v3: 1.drop hub and the frontend(virtio net) 2.split the patch for NetClientSource v1->v2: 1.NetClientState can associate with up to 2 GSource, for virtio net, one for tx, one for rx, so vq can run on different threads. 2.make network front-end onto glib, currently virtio net dataplane Liu Ping Fan (5): net: introduce glib function for network net: port tap onto glib net: resolve race of tap backend and its peer net: port vde onto glib net: port socket to glib include/net/net.h | 15 +++++ net/net.c | 61 +++++++++++++++++++++ net/socket.c | 152 ++++++++++++++++++++++++++++++++++++++++------------- net/tap.c | 63 ++++++++++++++++++---- net/vde.c | 15 +++++- 5 files changed, 258 insertions(+), 48 deletions(-) -- 1.7.4.4