From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomasz Duszynski Subject: Re: [PATCH] app/testpmd: allow setting shaper profile id to none Date: Fri, 16 Feb 2018 09:13:39 +0100 Message-ID: <20180216081339.GB25327@sh> References: <1517297828-3111-1-git-send-email-tdu@semihalf.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: wenzhuo.lu@intel.com, jingjing.wu@intel.com, Tomasz Duszynski To: dev@dpdk.org Return-path: Received: from mail-lf0-f65.google.com (mail-lf0-f65.google.com [209.85.215.65]) by dpdk.org (Postfix) with ESMTP id 2C649A48C for ; Fri, 16 Feb 2018 09:13:41 +0100 (CET) Received: by mail-lf0-f65.google.com with SMTP id q69so2932933lfi.10 for ; Fri, 16 Feb 2018 00:13:41 -0800 (PST) Content-Disposition: inline In-Reply-To: <1517297828-3111-1-git-send-email-tdu@semihalf.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tue, Jan 30, 2018 at 08:37:08AM +0100, Tomasz Duszynski wrote: > Private shaper profiles are attached to nodes defined > in traffic manager hierarchy. > > Since not every node must have a configured shaper > testpmd should allow setting shaper profile id to > invalid (RTE_TM_SHAPER_PROFILE_ID_NONE) easily. > > This patch follows same approach as in case of setting > parent id of the root node i.e passing a negative value > sets node id to RTE_TM_NODE_ID_NULL. > > In case of private shaper profile negative value will set > shaper profile id to RTE_TM_SHAPER_PROFILE_ID_NONE. > > Signed-off-by: Tomasz Duszynski > --- > app/test-pmd/cmdline_tm.c | 20 ++++++++++++++------ > 1 file changed, 14 insertions(+), 6 deletions(-) > > diff --git a/app/test-pmd/cmdline_tm.c b/app/test-pmd/cmdline_tm.c > index 35cad54..9859c3d 100644 > --- a/app/test-pmd/cmdline_tm.c > +++ b/app/test-pmd/cmdline_tm.c > @@ -1500,7 +1500,7 @@ struct cmd_add_port_tm_nonleaf_node_result { > uint32_t priority; > uint32_t weight; > uint32_t level_id; > - uint32_t shaper_profile_id; > + int32_t shaper_profile_id; > uint32_t n_sp_priorities; > uint64_t stats_mask; > cmdline_multi_string_t multi_shared_shaper_id; > @@ -1542,7 +1542,7 @@ cmdline_parse_token_num_t cmd_add_port_tm_nonleaf_n= ode_level_id =3D > level_id, UINT32); > cmdline_parse_token_num_t cmd_add_port_tm_nonleaf_node_shaper_profile_id= =3D > TOKEN_NUM_INITIALIZER(struct cmd_add_port_tm_nonleaf_node_result, > - shaper_profile_id, UINT32); > + shaper_profile_id, INT32); > cmdline_parse_token_num_t cmd_add_port_tm_nonleaf_node_n_sp_priorities = =3D > TOKEN_NUM_INITIALIZER(struct cmd_add_port_tm_nonleaf_node_result, > n_sp_priorities, UINT32); > @@ -1593,7 +1593,11 @@ static void cmd_add_port_tm_nonleaf_node_parsed(vo= id *parsed_result, > return; > } > > - np.shaper_profile_id =3D res->shaper_profile_id; > + if (res->shaper_profile_id < 0) > + np.shaper_profile_id =3D UINT32_MAX; > + else > + np.shaper_profile_id =3D res->shaper_profile_id; > + > np.n_shared_shapers =3D n_shared_shapers; > if (np.n_shared_shapers) > np.shared_shaper_id =3D &shared_shaper_id[0]; > @@ -1651,7 +1655,7 @@ struct cmd_add_port_tm_leaf_node_result { > uint32_t priority; > uint32_t weight; > uint32_t level_id; > - uint32_t shaper_profile_id; > + int32_t shaper_profile_id; > uint32_t cman_mode; > uint32_t wred_profile_id; > uint64_t stats_mask; > @@ -1693,7 +1697,7 @@ cmdline_parse_token_num_t cmd_add_port_tm_leaf_node= _level_id =3D > level_id, UINT32); > cmdline_parse_token_num_t cmd_add_port_tm_leaf_node_shaper_profile_id =3D > TOKEN_NUM_INITIALIZER(struct cmd_add_port_tm_leaf_node_result, > - shaper_profile_id, UINT32); > + shaper_profile_id, INT32); > cmdline_parse_token_num_t cmd_add_port_tm_leaf_node_cman_mode =3D > TOKEN_NUM_INITIALIZER(struct cmd_add_port_tm_leaf_node_result, > cman_mode, UINT32); > @@ -1747,7 +1751,11 @@ static void cmd_add_port_tm_leaf_node_parsed(void = *parsed_result, > return; > } > > - np.shaper_profile_id =3D res->shaper_profile_id; > + if (res->shaper_profile_id < 0) > + np.shaper_profile_id =3D UINT32_MAX; > + else > + np.shaper_profile_id =3D res->shaper_profile_id; > + > np.n_shared_shapers =3D n_shared_shapers; > > if (np.n_shared_shapers) > -- > 2.7.4 > This has been here for a while already. Any comments? -- - Tomasz Duszy=C5=84ski