From mboxrd@z Thu Jan 1 00:00:00 1970 From: Harman Kalra Subject: [PATCH v2 2/2] distributor: imposing additional check on no of workers Date: Mon, 18 Feb 2019 14:51:38 +0000 Message-ID: <1550501471-4196-2-git-send-email-hkalra@marvell.com> References: <51f4c084-077c-0417-e242-c45d9ea4ffa2@linux.intel.com> <1550501471-4196-1-git-send-email-hkalra@marvell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Cc: "dev@dpdk.org" , Jerin Jacob Kollanukkaran , Harman Kalra To: "david.hunt@intel.com" , "ferruh.yigit@linux.intel.com" Return-path: Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 5F7815B26 for ; Mon, 18 Feb 2019 15:51:46 +0100 (CET) In-Reply-To: <1550501471-4196-1-git-send-email-hkalra@marvell.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" no of workers should never exceed RTE_MAX_LCORE Signed-off-by: Harman Kalra --- lib/librte_distributor/rte_distributor.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/librte_distributor/rte_distributor.c b/lib/librte_distribu= tor/rte_distributor.c index d50598377..043b8f3ae 100644 --- a/lib/librte_distributor/rte_distributor.c +++ b/lib/librte_distributor/rte_distributor.c @@ -595,6 +595,12 @@ rte_distributor_create_v1705(const char *name, RTE_BUILD_BUG_ON((sizeof(*d) & RTE_CACHE_LINE_MASK) !=3D 0); RTE_BUILD_BUG_ON((RTE_DISTRIB_MAX_WORKERS & 7) !=3D 0); =20 + if (name =3D=3D NULL || num_workers >=3D + (unsigned int)RTE_MIN(RTE_DISTRIB_MAX_WORKERS, RTE_MAX_LCORE)) { + rte_errno =3D EINVAL; + return NULL; + } + if (alg_type =3D=3D RTE_DIST_ALG_SINGLE) { d =3D malloc(sizeof(struct rte_distributor)); if (d =3D=3D NULL) { @@ -612,11 +618,6 @@ rte_distributor_create_v1705(const char *name, return d; } =20 - if (name =3D=3D NULL || num_workers >=3D RTE_DISTRIB_MAX_WORKERS) { - rte_errno =3D EINVAL; - return NULL; - } - snprintf(mz_name, sizeof(mz_name), RTE_DISTRIB_PREFIX"%s", name); mz =3D rte_memzone_reserve(mz_name, sizeof(*d), socket_id, NO_FLAGS); if (mz =3D=3D NULL) { --=20 2.18.0