> -----Original Message----- > From: Mrozowicz, SlawomirX > Sent: Tuesday, May 10, 2016 1:21 PM > To: Dumitrescu, Cristian <cristian.dumitrescu at intel.com> > Cc: dev at dpdk.org; Singh, Jasvinder <jasvinder.singh at intel.com>; > Mrozowicz, SlawomirX <slawomirx.mrozowicz at intel.com> > Subject: [PATCH v3] examples/qos_sched: fix bad bit shift operation > > Fix issue reported by Coverity. > > 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. > > Fixes: de3cfa2c9823 ("sched: initial import") > > Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz at intel.com> > --- > examples/qos_sched/args.c | 4 ++-- > examples/qos_sched/main.h | 3 ++- > 2 files changed, 4 insertions(+), 3 deletions(-) > > 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 = 0; > struct rte_config *cfg = rte_eal_get_configuration(); > > - for (i = 0; i < RTE_MAX_LCORE; i++) { > + for (i = 0; i < APP_MAX_LCORE; i++) { > if (cfg->lcore_role[i] == ROLE_RTE) > cm |= (1ULL << i); > } > @@ -142,7 +142,7 @@ app_cpu_core_count(void) > char path[PATH_MAX]; > uint32_t ncores = 0; > > - for(i = 0; i < RTE_MAX_LCORE; i++) { > + for (i = 0; i < APP_MAX_LCORE; i++) { > len = snprintf(path, sizeof(path), SYS_CPU_DIR, i); > if (len <= 0 || (unsigned)len >= 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" { > > #define BURST_TX_DRAIN_US 100 > > -#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 > > -- > 1.9.1 Yep, looks good. Thanks, Slawomir! Regards, Cristian