From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 5B84B3B5 for ; Wed, 30 Sep 2015 16:06:37 +0200 (CEST) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga102.fm.intel.com with ESMTP; 30 Sep 2015 07:06:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,612,1437462000"; d="scan'208";a="780944567" Received: from unknown (HELO Sent) ([10.217.248.94]) by orsmga001.jf.intel.com with SMTP; 30 Sep 2015 07:06:34 -0700 Received: by Sent (sSMTP sendmail emulation); Wed, 30 Sep 2015 16:05:09 +0200 From: Tomasz Kulasek To: dev@dpdk.org Date: Wed, 30 Sep 2015 16:04:56 +0200 Message-Id: <1443621905-7872-1-git-send-email-tomaszx.kulasek@intel.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1436981189-3320-1-git-send-email-tomaszx.kulasek@intel.com> References: <1436981189-3320-1-git-send-email-tomaszx.kulasek@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v5 0/9] Dynamic RSS Configuration for Bonding X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Sep 2015 14:06:37 -0000 OVERVIEW -------- 1) Setting .rxmode.mq_mode for bonding device to ETH_MQ_RX_RSS makes bonding device fully RSS-capable, so all slaves are synchronized with its configuration. This mode is intended to provide RSS configuration as known from "dynamic RSS configuration for one port" and made slaves transparent for client application implementation. 2) If .rxmode.mq_mode for bonding device isn't ETH_MQ_RX_RSS, slaves are not synchronized. That provides an ability to configure them manually. This mode may be useful when application wants to manage RSS in an unusual way and the consistency of RSS configuration for slaves isn't required. Turning on/off RSS mode for slaves when bonding is started is not possible. Other RSS configuration is propagated over slaves, when bonding device API is used to do it. v5 changes: - updated to DPDK 2.2 - removed copyright change from null device source - removed queue_stats_mapping_set from eth_dev_ops of bonding device - null pmd cleanups (removed unnecessary malloc, replaced memcpy with rte_memcpy) - fixed queues number configuration in null pmd v4 changes: - fixed copy-paste error, - removed example application as too complex and introducing a new dependency, - addapted null pmd to be used as testing device for dynamic RSS configuration, - addapted test units to use null pmd instead of ring pmd, - ring pmd is not used and changed in this patchset v3 changes: - checkpatch cleanups v2 changes: - added support for keys other than 40 bytes long, - now, if RSS key is not set for bonding, it is not set also for slaves, - fix - full initial RSS configuration before any slave is added was not possible due to the initially zeroed flow_type_rss_offloads for bonding, - fix - changed error to warning when slave is synchronizing due to the bonding's initial configuration (to allow use slaves' drivers not supporting dynamic RSS configuration in bonding), - some code cleanups, - updated documentation, Tomasz Kulasek (9): bonding: rss dynamic configuration null: fix segfault when null_pmd added to bonding null: extend number of virtual queues null: virtual dynamic rss configuration null: export eth_dev_null_create test: dynamic rss configuration bonding: per queue stats doc: fixed spellings and typos doc: dynamic rss configuration for bonding app/test/Makefile | 8 + app/test/test_link_bonding_rssconf.c | 679 ++++++++++++++++++++ .../prog_guide/link_bonding_poll_mode_drv_lib.rst | 42 +- drivers/net/bonding/rte_eth_bond_api.c | 28 + drivers/net/bonding/rte_eth_bond_pmd.c | 216 ++++++- drivers/net/bonding/rte_eth_bond_private.h | 12 + drivers/net/null/Makefile | 2 +- drivers/net/null/rte_eth_null.c | 148 ++++- drivers/net/null/rte_eth_null.h | 40 ++ drivers/net/null/rte_pmd_null_version.map | 7 + 10 files changed, 1150 insertions(+), 32 deletions(-) create mode 100644 app/test/test_link_bonding_rssconf.c create mode 100644 drivers/net/null/rte_eth_null.h -- 1.7.9.5