From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 9D7B5AE07 for ; Tue, 10 May 2016 19:25:26 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP; 10 May 2016 10:25:12 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,605,1455004800"; d="scan'208";a="962980731" Received: from irsmsx106.ger.corp.intel.com ([163.33.3.31]) by fmsmga001.fm.intel.com with ESMTP; 10 May 2016 10:25:11 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.241]) by IRSMSX106.ger.corp.intel.com ([169.254.8.131]) with mapi id 14.03.0248.002; Tue, 10 May 2016 18:25:10 +0100 From: "Dumitrescu, Cristian" To: "Mrozowicz, SlawomirX" CC: "dev@dpdk.org" , "Singh, Jasvinder" Thread-Topic: [PATCH v3] examples/qos_sched: fix bad bit shift operation Thread-Index: AQHRqrX31p0GNUZrIk2Gn8ZwKv6TM5+ya9vw Date: Tue, 10 May 2016 17:25:09 +0000 Message-ID: <3EB4FA525960D640B5BDFFD6A3D89126479BAF67@IRSMSX108.ger.corp.intel.com> References: <1462882849-3298-1-git-send-email-slawomirx.mrozowicz@intel.com> In-Reply-To: <1462882849-3298-1-git-send-email-slawomirx.mrozowicz@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiOTEzNTc4ZmUtZWE5YS00ZmZjLTk5MGMtNWM0M2Y1OGFiMDFlIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6InNocXBiQ1RwM3NTMXMreFR2SkpxUmpvNldoSDJHZnU0Z2FET25zd3RtODA9In0= x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v3] examples/qos_sched: fix bad bit shift operation 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: Tue, 10 May 2016 17:25:27 -0000 > -----Original Message----- > From: Mrozowicz, SlawomirX > Sent: Tuesday, May 10, 2016 1:21 PM > To: Dumitrescu, Cristian > Cc: dev@dpdk.org; Singh, Jasvinder ; > Mrozowicz, SlawomirX > Subject: [PATCH v3] examples/qos_sched: fix bad bit shift operation >=20 > Fix issue reported by Coverity. >=20 > Coverity ID 30690: Bad bit shift operation > large_shift: In expression 1ULL << i, left shifting by more than 63 bits > has undefined behavior. The shift amount, i, is as much as 127. >=20 > Fixes: de3cfa2c9823 ("sched: initial import") >=20 > Signed-off-by: Slawomir Mrozowicz > --- > examples/qos_sched/args.c | 4 ++-- > examples/qos_sched/main.h | 3 ++- > 2 files changed, 4 insertions(+), 3 deletions(-) >=20 > diff --git a/examples/qos_sched/args.c b/examples/qos_sched/args.c > index 3e7fd08..354372d 100644 > --- a/examples/qos_sched/args.c > +++ b/examples/qos_sched/args.c > @@ -123,7 +123,7 @@ app_eal_core_mask(void) > uint64_t cm =3D 0; > struct rte_config *cfg =3D rte_eal_get_configuration(); >=20 > - for (i =3D 0; i < RTE_MAX_LCORE; i++) { > + for (i =3D 0; i < APP_MAX_LCORE; i++) { > if (cfg->lcore_role[i] =3D=3D ROLE_RTE) > cm |=3D (1ULL << i); > } > @@ -142,7 +142,7 @@ app_cpu_core_count(void) > char path[PATH_MAX]; > uint32_t ncores =3D 0; >=20 > - for(i =3D 0; i < RTE_MAX_LCORE; i++) { > + for (i =3D 0; i < APP_MAX_LCORE; i++) { > len =3D snprintf(path, sizeof(path), SYS_CPU_DIR, i); > if (len <=3D 0 || (unsigned)len >=3D sizeof(path)) > continue; > diff --git a/examples/qos_sched/main.h b/examples/qos_sched/main.h > index 82aa0fa..e0517d1 100644 > --- a/examples/qos_sched/main.h > +++ b/examples/qos_sched/main.h > @@ -68,7 +68,8 @@ extern "C" { >=20 > #define BURST_TX_DRAIN_US 100 >=20 > -#define MAX_DATA_STREAMS (RTE_MAX_LCORE/2) > +#define APP_MAX_LCORE 64 Please allow this parameter to be configured from Makefile: #ifndef APP_MAX_LCORE #define APP_MAX_LCORE 64 #endif > +#define MAX_DATA_STREAMS (APP_MAX_LCORE/2) > #define MAX_SCHED_SUBPORTS 8 > #define MAX_SCHED_PIPES 4096 >=20 > -- > 1.9.1 Yep, looks good. Thanks, Slawomir! Regards, Cristian