From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id A90CCA32A2 for ; Fri, 25 Oct 2019 11:51:30 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DE7FC1BEC2; Fri, 25 Oct 2019 11:51:28 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 089601BFF5 for ; Fri, 25 Oct 2019 11:51:26 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Oct 2019 02:51:26 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,228,1569308400"; d="scan'208";a="223873625" Received: from silpixa00381635.ir.intel.com (HELO silpixa00381635.ger.corp.intel.com) ([10.237.223.229]) by fmsmga004.fm.intel.com with ESMTP; 25 Oct 2019 02:51:25 -0700 From: Jasvinder Singh To: dev@dpdk.org Cc: cristian.dumitrescu@intel.com Date: Fri, 25 Oct 2019 11:51:09 +0100 Message-Id: <20191025105124.6950-1-jasvinder.singh@intel.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191024184630.66881-1-jasvinder.singh@intel.com> References: <20191024184630.66881-1-jasvinder.singh@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v7 00/15] sched: subport level configuration of pipe nodes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patchset refactors the dpdk qos sched library to allow subport level configuration flexibility of the pipe nodes. Currently, all parameters for the pipe nodes (subscribers) configuration are part of the port level structure which forces all groups of subscribers (pipes) in different subports to have similar configurations in terms of their number, queue sizes, traffic-classes, etc. The new implementation moves pipe nodes configuration parameters from port level to subport level structure. This allows different subports of the same port to have different configuration for the pipe nodes, for examples- number of pipes, queue sizes, pipe profiles, etc. In order to keep the implementation complexity under control, all pipes within the same subport share the same configuration for queue sizes. v7: - rebase on latest dpdk master - fix build issue with clang v6: - fix build issue with patchset v5: - remove patches on 64-bit values support, sent separately v4: - remove deprecation note - rebase on current dpdk head - add 64-bit values support v3: - improve doxygen comments v2: - fix qsize parsing in sample application - fix checkpatch warnings Jasvinder Singh (15): sched: add pipe config params to subport struct sched: modify internal structs for config flexibility sched: remove pipe params config from port level sched: add pipe config to subport level sched: modify pipe functions for config flexibility sched: modify pkt enqueue for config flexibility sched: update memory compute to support flexiblity sched: update grinder functions for config flexibility sched: update pkt dequeue for flexible config sched: update queue stats read for config flexibility test/sched: modify tests for subport config flexibility net/softnic: add subport config flexibility to TM ip_pipeline: add subport config flexibility to TM examples/qos_sched: add subport configuration flexibility sched: remove redundant code app/test/test_sched.c | 35 +- doc/guides/rel_notes/release_19_11.rst | 7 +- drivers/net/softnic/rte_eth_softnic_tm.c | 54 +- examples/ip_pipeline/cli.c | 71 +- examples/ip_pipeline/tmgr.c | 25 +- examples/ip_pipeline/tmgr.h | 7 +- examples/qos_sched/app_thread.c | 20 +- examples/qos_sched/cfg_file.c | 229 ++-- examples/qos_sched/init.c | 54 +- examples/qos_sched/main.h | 1 + examples/qos_sched/profile.cfg | 5 +- examples/qos_sched/profile_ov.cfg | 5 +- examples/qos_sched/stats.c | 44 +- lib/librte_sched/Makefile | 2 +- lib/librte_sched/meson.build | 2 +- lib/librte_sched/rte_sched.c | 1394 +++++++++++++--------- lib/librte_sched/rte_sched.h | 129 +- lib/librte_sched/rte_sched_version.map | 2 +- 18 files changed, 1213 insertions(+), 873 deletions(-) -- 2.21.0