From: Dmitry Torokhov Date: Tue, 6 Sep 2005 22:19:20 +0000 (-0700) Subject: [PATCH] smsc-ircc2: drop DIM macro in favor of ARRAY_SIZE X-Git-Tag: v2.6.14-rc1~566 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=a956f4ca3ede0a77e307f504e4a98554047b44ff;p=~emulex%2Finfiniband.git [PATCH] smsc-ircc2: drop DIM macro in favor of ARRAY_SIZE IRDA: smsc-ircc2 - remove home-grown DIM macro, use ARRAY_SIZE intead. Also fix out-of-bound array access. Signed-off-by: Dmitry Torokhov Cc: Jean Tourrilhes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/net/irda/smsc-ircc2.c b/drivers/net/irda/smsc-ircc2.c index ab3ff0cd043..a5090ddb0d0 100644 --- a/drivers/net/irda/smsc-ircc2.c +++ b/drivers/net/irda/smsc-ircc2.c @@ -163,7 +163,6 @@ struct smsc_ircc_cb { /* Constants */ static const char *driver_name = "smsc-ircc2"; -#define DIM(x) (sizeof(x)/(sizeof(*(x)))) #define SMSC_IRCC2_C_IRDA_FALLBACK_SPEED 9600 #define SMSC_IRCC2_C_DEFAULT_TRANSCEIVER 1 #define SMSC_IRCC2_C_NET_TIMEOUT 0 @@ -240,7 +239,7 @@ static smsc_transceiver_t smsc_transceivers[] = { "ATC IRMode", smsc_ircc_set_transceiver_smsc_ircc_atc, smsc_ircc_probe_transceiver_smsc_ircc_atc }, { NULL, NULL } }; -#define SMSC_IRCC2_C_NUMBER_OF_TRANSCEIVERS (DIM(smsc_transceivers)-1) +#define SMSC_IRCC2_C_NUMBER_OF_TRANSCEIVERS (ARRAY_SIZE(smsc_transceivers) - 1) /* SMC SuperIO chipsets definitions */ @@ -400,7 +399,7 @@ static int __init smsc_ircc_open(unsigned int fir_base, unsigned int sir_base, u goto err_out; err = -ENOMEM; - if (dev_count > DIM(dev_self)) { + if (dev_count >= ARRAY_SIZE(dev_self)) { IRDA_WARNING("%s(), too many devices!\n", __FUNCTION__); goto err_out1; }