From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [RFC PATCH V2] New Xen netback implementation Date: Tue, 17 Jan 2012 13:46:56 +0000 Message-ID: <1326808024-3744-1-git-send-email-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain Cc: konrad.wilk@oracle.com, david.vrabel@citrix.com, paul.durrant@citrix.com To: ian.campbell@citrix.com, netdev@vger.kernel.org, xen-devel@lists.xensource.com Return-path: Received: from smtp.citrix.com ([66.165.176.89]:34152 "EHLO SMTP.CITRIX.COM" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753399Ab2AQNsF (ORCPT ); Tue, 17 Jan 2012 08:48:05 -0500 Sender: netdev-owner@vger.kernel.org List-ID: A new netback implementation which includes three major features: - Global page pool support - NAPI + kthread 1:1 model - Netback internal name changes Changes in V2: - Fix minor bugs in V1 - Embed pending_tx_info into page pool - Per-cpu scratch space - Notification code path clean up This patch series is the foundation of furture work. So it is better to get it right first. Patch 1 and 3 have the real meat. The first benifit of 1:1 model will be scheduling fairness. The rational behind a global page pool is that we need to limit overall memory consumed by all vifs. Utilization of NAPI enables the possibility to mitigate interrupts/events, the code path is cleaned up in a separated patch. Netback internal changes cleans up the code structure after switching to 1:1 model. It also prepares netback for further code layout changes. --- drivers/net/xen-netback/Makefile | 2 +- drivers/net/xen-netback/common.h | 78 ++-- drivers/net/xen-netback/interface.c | 117 ++++-- drivers/net/xen-netback/netback.c | 836 ++++++++++++++--------------------- drivers/net/xen-netback/page_pool.c | 185 ++++++++ drivers/net/xen-netback/page_pool.h | 66 +++ drivers/net/xen-netback/xenbus.c | 6 +- 7 files changed, 704 insertions(+), 586 deletions(-)