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 B6C582BAC for ; Thu, 3 Mar 2016 18:46:46 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga101.fm.intel.com with ESMTP; 03 Mar 2016 09:46:42 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,532,1449561600"; d="scan'208";a="928973390" Received: from irsmsx152.ger.corp.intel.com ([163.33.192.66]) by fmsmga002.fm.intel.com with ESMTP; 03 Mar 2016 09:46:40 -0800 Received: from irsmsx105.ger.corp.intel.com ([169.254.7.35]) by IRSMSX152.ger.corp.intel.com ([169.254.6.34]) with mapi id 14.03.0248.002; Thu, 3 Mar 2016 17:45:47 +0000 From: "Ananyev, Konstantin" To: "Yigit, Ferruh" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] igb_uio: use macros for array size calculation Thread-Index: AQHRdW9sm4r8BAUzEU2RUY12A12f5J9H93BAgAADtYCAAAHbgA== Date: Thu, 3 Mar 2016 17:45:46 +0000 Message-ID: <2601191342CEEE43887BDE71AB97725836B16008@irsmsx105.ger.corp.intel.com> References: <1457024900-18245-1-git-send-email-ferruh.yigit@intel.com> <1457024900-18245-2-git-send-email-ferruh.yigit@intel.com> <2601191342CEEE43887BDE71AB97725836B15FD6@irsmsx105.ger.corp.intel.com> <56D875C3.20507@intel.com> In-Reply-To: <56D875C3.20507@intel.com> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYmQwYzJiYTYtZmY0Yi00YjcwLWJlMDUtNDRlY2JmYzZhNzRmIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IkwrbnJUeTh2Rm1vRWt4WGlLTkJQY3pHajl4aFwvUDJHOE9LK0hcL1VudW51ST0ifQ== x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH] igb_uio: use macros for array size calculation 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, 03 Mar 2016 17:46:47 -0000 > -----Original Message----- > From: Yigit, Ferruh > Sent: Thursday, March 03, 2016 5:35 PM > To: Ananyev, Konstantin; dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH] igb_uio: use macros for array size calcul= ation >=20 > On 3/3/2016 5:25 PM, Ananyev, Konstantin wrote: > > > > > >> -----Original Message----- > >> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Ferruh Yigit > >> Sent: Thursday, March 03, 2016 5:08 PM > >> To: dev@dpdk.org > >> Subject: [dpdk-dev] [PATCH] igb_uio: use macros for array size calcula= tion > >> > >> Minor code cleanup. > >> Remove array size calculations and remove unnecessary assignment. > >> > >> Signed-off-by: Ferruh Yigit > >> --- > >> lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 8 ++++---- > >> 1 file changed, 4 insertions(+), 4 deletions(-) > >> > >> diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_ea= l/linuxapp/igb_uio/igb_uio.c > >> index 3374e44..563c57b 100644 > >> --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c > >> +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c > >> @@ -58,7 +58,7 @@ struct rte_uio_pci_dev { > >> enum rte_intr_mode mode; > >> }; > >> > >> -static char *intr_mode =3D NULL; > >> +static char *intr_mode; > >> static enum rte_intr_mode igbuio_intr_mode_preferred =3D RTE_INTR_MOD= E_MSIX; > >> > >> /* sriov sysfs */ > >> @@ -332,7 +332,7 @@ igbuio_pci_setup_iomem(struct pci_dev *dev, struct= uio_info *info, > >> unsigned long addr, len; > >> void *internal_addr; > >> > >> - if (sizeof(info->mem) / sizeof(info->mem[0]) <=3D n) > >> + if (n >=3D MAX_UIO_MAPS) > > > > Why using hardcoded value is better than sizeof()? > > As I can see below there is a macro ARRAY_SIZE, why not to use it here = then? >=20 > Both are valid, but in uio (uio_driver.h) "mem" array defined as: > struct uio_mem mem[MAX_UIO_MAPS]; Yep, so if both are valid, why to change it a the first place? :) >=20 > So we already know the size of the array, and it is exposed to us, why > need to calculate. Is there any benefit of calculating it? if in future definition of the mem[] would change to let say: struct uio_mem mem[X] your code would still be valid, and no need to update it.=20 Konstantin >=20 > Thanks, > ferruh