From: Pekka Enberg on
On 6/28/10 2:55 PM, Kulikov Vasiliy wrote:
> Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x).
>
> Signed-off-by: Kulikov Vasiliy<segooon(a)gmail.com>

Acked-by: Pekka Enberg <penberg(a)cs.helsinki.fi>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: walter harms on


Kulikov Vasiliy schrieb:
> Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x).
>
> Signed-off-by: Kulikov Vasiliy <segooon(a)gmail.com>
> ---
> drivers/staging/otus/hal/hpreg.c | 17 +++++++----------
> 1 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/staging/otus/hal/hpreg.c b/drivers/staging/otus/hal/hpreg.c
> index da3b774..9b04653 100644
> --- a/drivers/staging/otus/hal/hpreg.c
> +++ b/drivers/staging/otus/hal/hpreg.c
> @@ -29,9 +29,6 @@
> #include "hpreg.h"
> #include "hpusb.h"
>
> -/* used throughout this file... */
> -#define N(a) (sizeof(a) / sizeof(a[0]))
> -
> #define HAL_MODE_11A_TURBO HAL_MODE_108A
> #define HAL_MODE_11G_TURBO HAL_MODE_108G
>
> @@ -1557,7 +1554,7 @@ u8_t GetWmRD(u16_t regionCode, u16_t channelFlag, REG_DOMAIN *rd)
> u64_t flags = NO_REQ;
> REG_DMN_PAIR_MAPPING *regPair = NULL;
>
> - for (i = 0, found = 0; (i < N(regDomainPairs)) && (!found); i++) {
> + for (i = 0, found = 0; (i < ARRAY_SIZE(regDomainPairs)) && (!found); i++) {
> if (regDomainPairs[i].regDmnEnum == regionCode) {
> regPair = &regDomainPairs[i];
> found = 1;



This looks odd, i do not see the rest of the code but perhaps a break would help
to eleminate the "found" ??

just my two cents,
wh


> @@ -1581,7 +1578,7 @@ u8_t GetWmRD(u16_t regionCode, u16_t channelFlag, REG_DOMAIN *rd)
> * unitary reg domain of the pair
> */
>
> - for (i = 0 ; i < N(regDomains) ; i++) {
> + for (i = 0 ; i < ARRAY_SIZE(regDomains) ; i++) {
> if (regDomains[i].regDmnEnum == regDmn) {
> if (rd != NULL) {
> zfMemoryCopy((u8_t *)rd, (u8_t *)&regDomains[i],
> @@ -1653,7 +1650,7 @@ void zfHpGetRegulationTable(zdev_t *dev, u16_t regionCode, u16_t c_lo, u16_t c_h
>
> zmw_enter_critical_section(dev);
>
> - for (cm = modes; cm < &modes[N(modes)]; cm++) {
> + for (cm = modes; cm < &modes[ARRAY_SIZE(modes)]; cm++) {
> u16_t c;
> u64_t *channelBM = NULL;
> REG_DOMAIN *rd = NULL;
> @@ -1846,7 +1843,7 @@ void zfHpGetRegulationTablefromCountry(zdev_t *dev, u16_t CountryCode)
>
> zmw_declare_for_critical_section();
>
> - for (i = 0; i < N(allCountries); i++) {
> + for (i = 0; i < ARRAY_SIZE(allCountries); i++) {
> if (CountryCode == allCountries[i].countryCode) {
> RegDomain = allCountries[i].regDmnEnum;
>
> @@ -1881,7 +1878,7 @@ u8_t zfHpGetRegulationTablefromISO(zdev_t *dev, u8_t *countryInfo, u8_t length)
> strLen = 3; */
> }
> /* zm_debug_msg_s("Desired iso name = ", isoName); */
> - for (i = 0; i < N(allCountries); i++) {
> + for (i = 0; i < ARRAY_SIZE(allCountries); i++) {
> /* zm_debug_msg_s("Current iso name = ", allCountries[i].isoName); */
> if (zfMemoryIsEqual((u8_t *)allCountries[i].isoName, (u8_t *)&countryInfo[2], length-1)) {
> /* DbgPrint("Set current iso name = %s\n", allCountries[i].isoName); */
> @@ -1937,7 +1934,7 @@ const char *zfHpGetisoNamefromregionCode(zdev_t *dev, u16_t regionCode)
> {
> u16_t i;
>
> - for (i = 0; i < N(allCountries); i++) {
> + for (i = 0; i < ARRAY_SIZE(allCountries); i++) {
> if (allCountries[i].regDmnEnum == regionCode)
> return allCountries[i].isoName;
> }
> @@ -1953,7 +1950,7 @@ u16_t zfHpGetRegionCodeFromIsoName(zdev_t *dev, u8_t *countryIsoName)
> /* if no matching item, return default */
> regionCode = DEF_REGDMN;
>
> - for (i = 0; i < N(allCountries); i++) {
> + for (i = 0; i < ARRAY_SIZE(allCountries); i++) {
> if (zfMemoryIsEqual((u8_t *)allCountries[i].isoName, countryIsoName, 2)) {
> regionCode = allCountries[i].regDmnEnum;
> break;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Dan Carpenter on
On Mon, Jun 28, 2010 at 03:55:41PM +0400, Kulikov Vasiliy wrote:
> Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x).
>
> Signed-off-by: Kulikov Vasiliy <segooon(a)gmail.com>
> ---
> drivers/staging/wlags49_h2/hcf.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/staging/wlags49_h2/hcf.c b/drivers/staging/wlags49_h2/hcf.c
> index 390628c..c4fe0ec 100644
> --- a/drivers/staging/wlags49_h2/hcf.c
> +++ b/drivers/staging/wlags49_h2/hcf.c
> @@ -502,7 +502,7 @@ HCF_STATIC hcf_16* BASED xxxx[ ] = {
> #endif // MSF_COMPONENT_ID
> NULL //endsentinel
> };
> -#define xxxx_PRI_IDENTITY_OFFSET (sizeof(xxxx)/sizeof(xxxx[0]) - 3)
> +#define xxxx_PRI_IDENTITY_OFFSET (ARRAY_SIZE(xxxx) - 3)
>

I would say the more critical problem with this macro is that it doesn't
work unless you name all your arrays "xxxx[]" so it encourages sub par
variable names.

You could do:
#define PRI_IDENTITY_OFFSET(x) (ARRAY_SIZE(x) - 3)

regards,
dan carpenter

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Kulikov Vasiliy on
On Mon, Jun 28, 2010 at 14:52 +0200, Dan Carpenter wrote:
> On Mon, Jun 28, 2010 at 03:55:41PM +0400, Kulikov Vasiliy wrote:
> > Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x).
> >
> > Signed-off-by: Kulikov Vasiliy <segooon(a)gmail.com>
> > ---
> > drivers/staging/wlags49_h2/hcf.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/staging/wlags49_h2/hcf.c b/drivers/staging/wlags49_h2/hcf.c
> > index 390628c..c4fe0ec 100644
> > --- a/drivers/staging/wlags49_h2/hcf.c
> > +++ b/drivers/staging/wlags49_h2/hcf.c
> > @@ -502,7 +502,7 @@ HCF_STATIC hcf_16* BASED xxxx[ ] = {
> > #endif // MSF_COMPONENT_ID
> > NULL //endsentinel
> > };
> > -#define xxxx_PRI_IDENTITY_OFFSET (sizeof(xxxx)/sizeof(xxxx[0]) - 3)
> > +#define xxxx_PRI_IDENTITY_OFFSET (ARRAY_SIZE(xxxx) - 3)
> >
>
> I would say the more critical problem with this macro is that it doesn't
> work unless you name all your arrays "xxxx[]" so it encourages sub par
> variable names.
>
> You could do:
> #define PRI_IDENTITY_OFFSET(x) (ARRAY_SIZE(x) - 3)

Look at the patch:

> > @@ -502,7 +502,7 @@ HCF_STATIC hcf_16* BASED xxxx[ ] = {
There is an array called 'xxxx' and macro xxxx_PRI_IDENTITY_OFFSET is defined
after array definition. This magic macroconstant is used in the code to get
elements of xxxx.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Dan Carpenter on
On Mon, Jun 28, 2010 at 05:15:11PM +0400, Kulikov Vasiliy wrote:
> On Mon, Jun 28, 2010 at 14:52 +0200, Dan Carpenter wrote:
> > On Mon, Jun 28, 2010 at 03:55:41PM +0400, Kulikov Vasiliy wrote:
> > > Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x).
> > >
> > > Signed-off-by: Kulikov Vasiliy <segooon(a)gmail.com>
> > > ---
> > > drivers/staging/wlags49_h2/hcf.c | 2 +-
> > > 1 files changed, 1 insertions(+), 1 deletions(-)
> > >
> > > diff --git a/drivers/staging/wlags49_h2/hcf.c b/drivers/staging/wlags49_h2/hcf.c
> > > index 390628c..c4fe0ec 100644
> > > --- a/drivers/staging/wlags49_h2/hcf.c
> > > +++ b/drivers/staging/wlags49_h2/hcf.c
> > > @@ -502,7 +502,7 @@ HCF_STATIC hcf_16* BASED xxxx[ ] = {
> > > #endif // MSF_COMPONENT_ID
> > > NULL //endsentinel
> > > };
> > > -#define xxxx_PRI_IDENTITY_OFFSET (sizeof(xxxx)/sizeof(xxxx[0]) - 3)
> > > +#define xxxx_PRI_IDENTITY_OFFSET (ARRAY_SIZE(xxxx) - 3)
> > >
> >
> > I would say the more critical problem with this macro is that it doesn't
> > work unless you name all your arrays "xxxx[]" so it encourages sub par
> > variable names.
> >
> > You could do:
> > #define PRI_IDENTITY_OFFSET(x) (ARRAY_SIZE(x) - 3)
>
> Look at the patch:
>
> > > @@ -502,7 +502,7 @@ HCF_STATIC hcf_16* BASED xxxx[ ] = {
> There is an array called 'xxxx' and macro xxxx_PRI_IDENTITY_OFFSET is defined
> after array definition. This magic macroconstant is used in the code to get
> elements of xxxx.

Right right. But xxxx is a stupid name for a variable. I wanted to
poke my eyes out with a fork.

Not your fault obviously. Your patch doesn't make it worse so I'm fine
with it as far as it goes...

regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/