From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 560AF39EA for ; Thu, 21 Apr 2016 13:47:59 +0200 (CEST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP; 21 Apr 2016 04:47:56 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,512,1455004800"; d="scan'208";a="963460466" Received: from pczapiex-mobl.ger.corp.intel.com (HELO Sent) ([10.217.248.212]) by fmsmga002.fm.intel.com with SMTP; 21 Apr 2016 04:47:53 -0700 Received: by Sent (sSMTP sendmail emulation); Thu, 21 Apr 2016 13:47:53 +0200 From: Michal Jastrzebski To: cristian.dumitrescu@intel.com, roy.fan.zhang@intel.com, jasvinder.singh@intel.com Cc: dev@dpdk.org, Slawomir Mrozowicz Date: Thu, 21 Apr 2016 13:47:32 +0200 Message-Id: <1461239256-8104-1-git-send-email-michalx.k.jastrzebski@intel.com> X-Mailer: git-send-email 2.7.0 Subject: [dpdk-dev] [PATCH v2] examples/qos_meter: fix unchecked return value 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: Thu, 21 Apr 2016 11:47:59 -0000 From: Slawomir Mrozowicz Fix issue reported by Coverity. Coverity ID 30693: Unchecked return value check_return: Calling rte_meter_srtcm_config without checking return value. Fixes: e6541fdec8b2 ("meter: initial import") Signed-off-by: Slawomir Mrozowicz --- examples/qos_meter/main.c | 15 ++++++++++----- examples/qos_meter/main.h | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/examples/qos_meter/main.c b/examples/qos_meter/main.c index b968b00..16b0b87 100644 --- a/examples/qos_meter/main.c +++ b/examples/qos_meter/main.c @@ -133,14 +133,17 @@ struct rte_meter_trtcm_params app_trtcm_params[] = { FLOW_METER app_flows[APP_FLOWS_MAX]; -static void +static int app_configure_flow_table(void) { uint32_t i, j; + int ret = 0; - for (i = 0, j = 0; i < APP_FLOWS_MAX; i ++, j = (j + 1) % RTE_DIM(PARAMS)){ - FUNC_CONFIG(&app_flows[i], &PARAMS[j]); - } + for (i = 0, j = 0; i < APP_FLOWS_MAX; + i ++, j = (j + 1) % RTE_DIM(PARAMS)) + ret |= FUNC_CONFIG(&app_flows[i], &PARAMS[j]); + + return ret; } static inline void @@ -381,7 +384,9 @@ main(int argc, char **argv) rte_eth_promiscuous_enable(port_tx); /* App configuration */ - app_configure_flow_table(); + ret = app_configure_flow_table(); + if (ret < 0) + rte_exit(EXIT_FAILURE, "Invalid configure flow table\n"); /* Launch per-lcore init on every lcore */ rte_eal_mp_remote_launch(main_loop, NULL, CALL_MASTER); diff --git a/examples/qos_meter/main.h b/examples/qos_meter/main.h index 530bf69..54867dc 100644 --- a/examples/qos_meter/main.h +++ b/examples/qos_meter/main.h @@ -51,7 +51,7 @@ enum policer_action policer_table[e_RTE_METER_COLORS][e_RTE_METER_COLORS] = #if APP_MODE == APP_MODE_FWD #define FUNC_METER(a,b,c,d) color, flow_id=flow_id, pkt_len=pkt_len, time=time -#define FUNC_CONFIG(a,b) +#define FUNC_CONFIG(a, b) 0 #define PARAMS app_srtcm_params #define FLOW_METER int -- 1.9.1