From 0d360302c73ea4b9760fc6b0a5502b25d666af3d Mon Sep 17 00:00:00 2001 From: Julia Lawall Date: Sat, 18 Jul 2009 17:25:30 +0200 Subject: Staging: meilhaus: convert nested spin_lock_irqsave to spin_lock If spin_lock_irqsave is called twice in a row with the same second argument, the interrupt state at the point of the second call overwrites the value saved by the first call. Indeed, the second call does not need to save the interrupt state, so it is changed to a simple spin_lock. The semantic match that finds this problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression lock1,lock2; expression flags; @@ *spin_lock_irqsave(lock1,flags) ... when != flags *spin_lock_irqsave(lock2,flags) // Signed-off-by: Julia Lawall Cc: David Kiliani Cc: Meilhaus Support Signed-off-by: Greg Kroah-Hartman --- drivers/staging/meilhaus/me4600_ai.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'drivers/staging/meilhaus') diff --git a/drivers/staging/meilhaus/me4600_ai.c b/drivers/staging/meilhaus/me4600_ai.c index e496d0c8d484..fd9daa942fb3 100644 --- a/drivers/staging/meilhaus/me4600_ai.c +++ b/drivers/staging/meilhaus/me4600_ai.c @@ -760,7 +760,7 @@ static int me4600_ai_io_single_read(me_subdevice_t *subdevice, // Mark that StreamConfig is removed. instance->chan_list_len = 0; - spin_lock_irqsave(instance->ctrl_reg_lock, cpu_flags); + spin_lock(instance->ctrl_reg_lock); /// @note Imprtant: Preserve EXT IRQ settings. tmp = inl(instance->ctrl_reg); // Clear FIFOs and dissable interrupts @@ -824,7 +824,7 @@ static int me4600_ai_io_single_read(me_subdevice_t *subdevice, instance->ctrl_reg - instance->reg_base, instance->single_config[channel].ctrl | tmp); - spin_unlock_irqrestore(instance->ctrl_reg_lock, cpu_flags); + spin_unlock(instance->ctrl_reg_lock); if (!(instance->single_config[channel].ctrl & ME4600_AI_CTRL_BIT_EX_TRIG)) { // Software start inl(instance->start_reg); @@ -877,7 +877,7 @@ static int me4600_ai_io_single_read(me_subdevice_t *subdevice, } // Restore settings. - spin_lock_irqsave(instance->ctrl_reg_lock, cpu_flags); + spin_lock(instance->ctrl_reg_lock); tmp = inl(instance->ctrl_reg); // Clear FIFOs and dissable interrupts. tmp &= @@ -889,7 +889,7 @@ static int me4600_ai_io_single_read(me_subdevice_t *subdevice, outl(tmp, instance->ctrl_reg); PDEBUG_REG("ctrl_reg outl(0x%lX+0x%lX)=0x%x\n", instance->reg_base, instance->ctrl_reg - instance->reg_base, tmp); - spin_unlock_irqrestore(instance->ctrl_reg_lock, cpu_flags); + spin_unlock(instance->ctrl_reg_lock); spin_unlock_irqrestore(&instance->subdevice_lock, cpu_flags); @@ -1268,7 +1268,7 @@ static int me4600_ai_io_stream_config(me_subdevice_t *subdevice, } instance->status = ai_status_none; - spin_lock_irqsave(instance->ctrl_reg_lock, cpu_flags); + spin_lock(instance->ctrl_reg_lock); // Stop all actions. Block all interrupts. Clear (disable) FIFOs. ctrl = ME4600_AI_CTRL_BIT_LE_IRQ_RESET | ME4600_AI_CTRL_BIT_HF_IRQ_RESET | @@ -1290,7 +1290,7 @@ static int me4600_ai_io_stream_config(me_subdevice_t *subdevice, outl(tmp | ctrl, instance->ctrl_reg); PDEBUG_REG("ctrl_reg outl(0x%lX+0x%lX)=0x%x\n", instance->reg_base, instance->ctrl_reg - instance->reg_base, tmp | ctrl); - spin_unlock_irqrestore(instance->ctrl_reg_lock, cpu_flags); + spin_unlock(instance->ctrl_reg_lock); // Write the channel list for (i = 0; i < count; i++) { @@ -1529,7 +1529,7 @@ static int me4600_ai_io_stream_config(me_subdevice_t *subdevice, ctrl |= (ME4600_AI_CTRL_BIT_HF_IRQ | ME4600_AI_CTRL_BIT_SC_IRQ | ME4600_AI_CTRL_BIT_LE_IRQ); //The last IRQ source (ME4600_AI_CTRL_BIT_LE_IRQ) is unused! //Everything is good. Finalize - spin_lock_irqsave(instance->ctrl_reg_lock, cpu_flags); + spin_lock(instance->ctrl_reg_lock); tmp = inl(instance->ctrl_reg); //Preserve EXT IRQ and OFFSET settings. Clean other bits. @@ -1541,7 +1541,7 @@ static int me4600_ai_io_stream_config(me_subdevice_t *subdevice, outl(ctrl | tmp, instance->ctrl_reg); PDEBUG_REG("ctrl_reg outl(0x%lX+0x%lX)=0x%x\n", instance->reg_base, instance->ctrl_reg - instance->reg_base, ctrl | tmp); - spin_unlock_irqrestore(instance->ctrl_reg_lock, cpu_flags); + spin_unlock(instance->ctrl_reg_lock); //Set the global parameters end exit. instance->chan_list_len = count; -- cgit v1.2.3 From 00c337d0f41a7f1fe8bde327c215eb3440f15fa5 Mon Sep 17 00:00:00 2001 From: Stoyan Gaydarov Date: Tue, 21 Jul 2009 22:02:27 -0500 Subject: Staging: ARRAY_SIZE changes These changes were a direct result of using a semantic patch More information can be found at http://www.emn.fr/x-info/coccinelle/ Signed-off-by: Stoyan Gaydarov Signed-off-by: Greg Kroah-Hartman --- drivers/staging/comedi/drivers/amplc_pci230.c | 2 +- drivers/staging/comedi/drivers/cb_das16_cs.c | 2 +- drivers/staging/comedi/drivers/das08_cs.c | 3 +-- drivers/staging/comedi/drivers/ni_6527.c | 2 +- drivers/staging/comedi/drivers/ni_65xx.c | 2 +- drivers/staging/comedi/drivers/ni_660x.c | 2 +- drivers/staging/comedi/drivers/ni_670x.c | 2 +- drivers/staging/comedi/drivers/ni_atmio16d.c | 2 +- drivers/staging/comedi/drivers/ni_pcidio.c | 2 +- drivers/staging/comedi/drivers/ni_pcimio.c | 2 +- drivers/staging/comedi/drivers/pcmad.c | 2 +- drivers/staging/comedi/drivers/poc.c | 2 +- drivers/staging/epl/EplDllk.c | 2 +- drivers/staging/epl/proc_fs.c | 4 ++-- drivers/staging/line6/driver.c | 2 +- drivers/staging/meilhaus/me0600_device.h | 2 +- drivers/staging/meilhaus/me0900_device.h | 2 +- drivers/staging/meilhaus/me1400_device.h | 2 +- drivers/staging/meilhaus/me1600_device.h | 2 +- drivers/staging/meilhaus/me4600_device.h | 2 +- drivers/staging/meilhaus/me6000_device.h | 2 +- drivers/staging/meilhaus/me8100_device.h | 2 +- drivers/staging/meilhaus/me8200_device.h | 2 +- drivers/staging/meilhaus/metempl_device.h | 2 +- drivers/staging/rtl8187se/r8180_wx.c | 6 +++--- drivers/staging/rtl8192su/ieee80211/ieee80211_wx.c | 2 +- drivers/staging/rtl8192su/r8192U_wx.c | 4 ++-- drivers/staging/slicoss/slicoss.c | 2 +- drivers/staging/sxg/sxg.c | 2 +- 29 files changed, 33 insertions(+), 34 deletions(-) (limited to 'drivers/staging/meilhaus') diff --git a/drivers/staging/comedi/drivers/amplc_pci230.c b/drivers/staging/comedi/drivers/amplc_pci230.c index c4d8c4cae4a5..091a1a5822a8 100644 --- a/drivers/staging/comedi/drivers/amplc_pci230.c +++ b/drivers/staging/comedi/drivers/amplc_pci230.c @@ -513,7 +513,7 @@ MODULE_DEVICE_TABLE(pci, pci230_pci_table); /* * Useful for shorthand access to the particular board structure */ -#define n_pci230_boards (sizeof(pci230_boards)/sizeof(pci230_boards[0])) +#define n_pci230_boards ARRAY_SIZE(pci230_boards) #define thisboard ((const struct pci230_board *)dev->board_ptr) /* this structure is for data unique to this hardware driver. If diff --git a/drivers/staging/comedi/drivers/cb_das16_cs.c b/drivers/staging/comedi/drivers/cb_das16_cs.c index 2f7aa3b5ef8e..12d12b43a6f1 100644 --- a/drivers/staging/comedi/drivers/cb_das16_cs.c +++ b/drivers/staging/comedi/drivers/cb_das16_cs.c @@ -78,7 +78,7 @@ static const struct das16cs_board das16cs_boards[] = { }, }; -#define n_boards (sizeof(das16cs_boards)/sizeof(das16cs_boards[0])) +#define n_boards ARRAY_SIZE(das16cs_boards) #define thisboard ((const struct das16cs_board *)dev->board_ptr) struct das16cs_private { diff --git a/drivers/staging/comedi/drivers/das08_cs.c b/drivers/staging/comedi/drivers/das08_cs.c index 74fcc1086c51..9cab21eaaa18 100644 --- a/drivers/staging/comedi/drivers/das08_cs.c +++ b/drivers/staging/comedi/drivers/das08_cs.c @@ -65,8 +65,7 @@ static struct comedi_driver driver_das08_cs = { .attach = das08_cs_attach, .detach = das08_common_detach, .board_name = &das08_cs_boards[0].name, - .num_names = sizeof(das08_cs_boards) / - sizeof(struct das08_board_struct), + .num_names = ARRAY_SIZE(das08_cs_boards), .offset = sizeof(struct das08_board_struct), }; diff --git a/drivers/staging/comedi/drivers/ni_6527.c b/drivers/staging/comedi/drivers/ni_6527.c index 7a49dfce67be..b37ef37c2d2d 100644 --- a/drivers/staging/comedi/drivers/ni_6527.c +++ b/drivers/staging/comedi/drivers/ni_6527.c @@ -103,7 +103,7 @@ static const struct ni6527_board ni6527_boards[] = { }, }; -#define n_ni6527_boards (sizeof(ni6527_boards)/sizeof(ni6527_boards[0])) +#define n_ni6527_boards ARRAY_SIZE(ni6527_boards) #define this_board ((const struct ni6527_board *)dev->board_ptr) static DEFINE_PCI_DEVICE_TABLE(ni6527_pci_table) = { diff --git a/drivers/staging/comedi/drivers/ni_65xx.c b/drivers/staging/comedi/drivers/ni_65xx.c index 8079c41b7338..6b118c15b49e 100644 --- a/drivers/staging/comedi/drivers/ni_65xx.c +++ b/drivers/staging/comedi/drivers/ni_65xx.c @@ -246,7 +246,7 @@ static const struct ni_65xx_board ni_65xx_boards[] = { }, }; -#define n_ni_65xx_boards (sizeof(ni_65xx_boards)/sizeof(ni_65xx_boards[0])) +#define n_ni_65xx_boards ARRAY_SIZE(ni_65xx_boards) static inline const struct ni_65xx_board *board(struct comedi_device *dev) { return dev->board_ptr; diff --git a/drivers/staging/comedi/drivers/ni_660x.c b/drivers/staging/comedi/drivers/ni_660x.c index 772c9372e435..404d3c516ed1 100644 --- a/drivers/staging/comedi/drivers/ni_660x.c +++ b/drivers/staging/comedi/drivers/ni_660x.c @@ -454,7 +454,7 @@ static inline const struct ni_660x_board *board(struct comedi_device *dev) return dev->board_ptr; } -#define n_ni_660x_boards (sizeof(ni_660x_boards)/sizeof(ni_660x_boards[0])) +#define n_ni_660x_boards ARRAY_SIZE(ni_660x_boards) static int ni_660x_attach(struct comedi_device *dev, struct comedi_devconfig *it); diff --git a/drivers/staging/comedi/drivers/ni_670x.c b/drivers/staging/comedi/drivers/ni_670x.c index 89ce5b873ffe..9b43547e80a1 100644 --- a/drivers/staging/comedi/drivers/ni_670x.c +++ b/drivers/staging/comedi/drivers/ni_670x.c @@ -111,7 +111,7 @@ struct ni_670x_private { }; #define devpriv ((struct ni_670x_private *)dev->private) -#define n_ni_670x_boards (sizeof(ni_670x_boards)/sizeof(ni_670x_boards[0])) +#define n_ni_670x_boards ARRAY_SIZE(ni_670x_boards) static int ni_670x_attach(struct comedi_device *dev, struct comedi_devconfig *it); diff --git a/drivers/staging/comedi/drivers/ni_atmio16d.c b/drivers/staging/comedi/drivers/ni_atmio16d.c index cde30b77a15f..901833d9b772 100644 --- a/drivers/staging/comedi/drivers/ni_atmio16d.c +++ b/drivers/staging/comedi/drivers/ni_atmio16d.c @@ -121,7 +121,7 @@ static const struct atmio16_board_t atmio16_boards[] = { }, }; -#define n_atmio16_boards sizeof(atmio16_boards)/sizeof(atmio16_boards[0]) +#define n_atmio16_boards ARRAY_SIZE(atmio16_boards) #define boardtype ((const struct atmio16_board_t *)dev->board_ptr) diff --git a/drivers/staging/comedi/drivers/ni_pcidio.c b/drivers/staging/comedi/drivers/ni_pcidio.c index 15148d1642d4..52b2eca9e73d 100644 --- a/drivers/staging/comedi/drivers/ni_pcidio.c +++ b/drivers/staging/comedi/drivers/ni_pcidio.c @@ -374,7 +374,7 @@ static const struct nidio_board nidio_boards[] = { }, }; -#define n_nidio_boards (sizeof(nidio_boards)/sizeof(nidio_boards[0])) +#define n_nidio_boards ARRAY_SIZE(nidio_boards) #define this_board ((const struct nidio_board *)dev->board_ptr) static DEFINE_PCI_DEVICE_TABLE(ni_pcidio_pci_table) = { diff --git a/drivers/staging/comedi/drivers/ni_pcimio.c b/drivers/staging/comedi/drivers/ni_pcimio.c index 0dc639212ade..19d87553d906 100644 --- a/drivers/staging/comedi/drivers/ni_pcimio.c +++ b/drivers/staging/comedi/drivers/ni_pcimio.c @@ -1208,7 +1208,7 @@ static const struct ni_board_struct ni_boards[] = { }, }; -#define n_pcimio_boards ((sizeof(ni_boards)/sizeof(ni_boards[0]))) +#define n_pcimio_boards ARRAY_SIZE(ni_boards) static int pcimio_attach(struct comedi_device *dev, struct comedi_devconfig *it); diff --git a/drivers/staging/comedi/drivers/pcmad.c b/drivers/staging/comedi/drivers/pcmad.c index 7368bf3011c9..acac67090810 100644 --- a/drivers/staging/comedi/drivers/pcmad.c +++ b/drivers/staging/comedi/drivers/pcmad.c @@ -69,7 +69,7 @@ static const struct pcmad_board_struct pcmad_boards[] = { }; #define this_board ((const struct pcmad_board_struct *)(dev->board_ptr)) -#define n_pcmad_boards (sizeof(pcmad_boards)/sizeof(pcmad_boards[0])) +#define n_pcmad_boards ARRAY_SIZE(pcmad_boards) struct pcmad_priv_struct { int differential; diff --git a/drivers/staging/comedi/drivers/poc.c b/drivers/staging/comedi/drivers/poc.c index 729a0d8766e8..d23e588d0632 100644 --- a/drivers/staging/comedi/drivers/poc.c +++ b/drivers/staging/comedi/drivers/poc.c @@ -102,7 +102,7 @@ static const struct boarddef_struct boards[] = { }, }; -#define n_boards (sizeof(boards)/sizeof(boards[0])) +#define n_boards ARRAY_SIZE(boards) #define this_board ((const struct boarddef_struct *)dev->board_ptr) static struct comedi_driver driver_poc = { diff --git a/drivers/staging/epl/EplDllk.c b/drivers/staging/epl/EplDllk.c index 25d2c34325db..0572c3d0aefd 100644 --- a/drivers/staging/epl/EplDllk.c +++ b/drivers/staging/epl/EplDllk.c @@ -328,7 +328,7 @@ tEplKernel EplDllkAddInstance(tEplDllkInitParam * pInitParam_p) // initialize and link pointers in instance structure to frame tables EplDllkInstance_g.m_pTxBuffer = aEplDllkTxBuffer_l; EplDllkInstance_g.m_uiMaxTxFrames = - sizeof(aEplDllkTxBuffer_l) / sizeof(tEdrvTxBuffer); + ARRAY_SIZE(aEplDllkTxBuffer_l); // initialize state EplDllkInstance_g.m_DllState = kEplDllGsInit; diff --git a/drivers/staging/epl/proc_fs.c b/drivers/staging/epl/proc_fs.c index 9ccf079e67e1..e48949d9ddf5 100644 --- a/drivers/staging/epl/proc_fs.c +++ b/drivers/staging/epl/proc_fs.c @@ -196,7 +196,7 @@ void TgtDbgSignalTracePoint(u8 bTracePointNumber_p) { if (bTracePointNumber_p >= - (sizeof(aatmDbgTracePoint_l) / sizeof(aatmDbgTracePoint_l[0]))) { + ARRAY_SIZE(aatmDbgTracePoint_l)) { goto Exit; } @@ -330,7 +330,7 @@ static int EplLinProcRead(char *pcBuffer_p, nSize += snprintf(pcBuffer_p + nSize, nBufferSize_p - nSize, "DbgTracePoints:\n"); for (nNum = 0; - nNum < (sizeof(aatmDbgTracePoint_l) / sizeof(atomic_t)); + nNum < ARRAY_SIZE(aatmDbgTracePoint_l); nNum++) { nSize += snprintf(pcBuffer_p + nSize, nBufferSize_p - nSize, diff --git a/drivers/staging/line6/driver.c b/drivers/staging/line6/driver.c index 85a20d0002c0..f188ecee502f 100644 --- a/drivers/staging/line6/driver.c +++ b/drivers/staging/line6/driver.c @@ -682,7 +682,7 @@ static int line6_probe(struct usb_interface *interface, const struct usb_device_ return -ENODEV; /* check vendor and product id */ - for (devtype = sizeof(line6_id_table) / sizeof(line6_id_table[0]) - 1; devtype--;) + for (devtype = ARRAY_SIZE(line6_id_table) - 1; devtype--;) if ((le16_to_cpu(usbdev->descriptor.idVendor) == line6_id_table[devtype].idVendor) && (le16_to_cpu(usbdev->descriptor.idProduct) == line6_id_table[devtype].idProduct)) break; diff --git a/drivers/staging/meilhaus/me0600_device.h b/drivers/staging/meilhaus/me0600_device.h index d93a8aee581b..75bd3b7351d2 100644 --- a/drivers/staging/meilhaus/me0600_device.h +++ b/drivers/staging/meilhaus/me0600_device.h @@ -54,7 +54,7 @@ static me0600_version_t me0600_versions[] = { {0}, }; -#define ME0600_DEVICE_VERSIONS (sizeof(me0600_versions) / sizeof(me0600_version_t) - 1) /**< Returns the number of entries in #me0600_versions. */ +#define ME0600_DEVICE_VERSIONS (ARRAY_SIZE(me0600_versions) - 1) /**< Returns the number of entries in #me0600_versions. */ /** * @brief Returns the index of the device entry in #me0600_versions. diff --git a/drivers/staging/meilhaus/me0900_device.h b/drivers/staging/meilhaus/me0900_device.h index bd17f2521511..53c05e83675d 100644 --- a/drivers/staging/meilhaus/me0900_device.h +++ b/drivers/staging/meilhaus/me0900_device.h @@ -53,7 +53,7 @@ static me0900_version_t me0900_versions[] = { {0}, }; -#define ME0900_DEVICE_VERSIONS (sizeof(me0900_versions) / sizeof(me0900_version_t) - 1) /**< Returns the number of entries in #me0900_versions. */ +#define ME0900_DEVICE_VERSIONS (ARRAY_SIZE(me0900_versions) - 1) /**< Returns the number of entries in #me0900_versions. */ /** * @brief Returns the index of the device entry in #me0900_versions. diff --git a/drivers/staging/meilhaus/me1400_device.h b/drivers/staging/meilhaus/me1400_device.h index 6215b250047d..d20112d8da60 100644 --- a/drivers/staging/meilhaus/me1400_device.h +++ b/drivers/staging/meilhaus/me1400_device.h @@ -60,7 +60,7 @@ static me1400_version_t me1400_versions[] = { {0} }; -#define ME1400_DEVICE_VERSIONS (sizeof(me1400_versions) / sizeof(me1400_version_t) - 1) /**< Returns the number of entries in #me1400_versions. */ +#define ME1400_DEVICE_VERSIONS (ARRAY_SIZE(me1400_versions) - 1) /**< Returns the number of entries in #me1400_versions. */ /** * @brief Returns the index of the device entry in #me1400_versions. diff --git a/drivers/staging/meilhaus/me1600_device.h b/drivers/staging/meilhaus/me1600_device.h index f7b231f73ac8..c73aca11ae88 100644 --- a/drivers/staging/meilhaus/me1600_device.h +++ b/drivers/staging/meilhaus/me1600_device.h @@ -58,7 +58,7 @@ static me1600_version_t me1600_versions[] = { }; /**< Returns the number of entries in #me1600_versions. */ -#define ME1600_DEVICE_VERSIONS (sizeof(me1600_versions) / sizeof(me1600_version_t) - 1) +#define ME1600_DEVICE_VERSIONS (ARRAY_SIZE(me1600_versions) - 1) /** * @brief Returns the index of the device entry in #me1600_versions. diff --git a/drivers/staging/meilhaus/me4600_device.h b/drivers/staging/meilhaus/me4600_device.h index fa812d4cc6dc..c755c574cda2 100644 --- a/drivers/staging/meilhaus/me4600_device.h +++ b/drivers/staging/meilhaus/me4600_device.h @@ -80,7 +80,7 @@ static me4600_version_t me4600_versions[] = { {0}, }; -#define ME4600_DEVICE_VERSIONS (sizeof(me4600_versions) / sizeof(me4600_version_t) - 1) /**< Returns the number of entries in #me4600_versions. */ +#define ME4600_DEVICE_VERSIONS (ARRAY_SIZE(me4600_versions) - 1) /**< Returns the number of entries in #me4600_versions. */ /** * @brief Returns the index of the device entry in #me4600_versions. diff --git a/drivers/staging/meilhaus/me6000_device.h b/drivers/staging/meilhaus/me6000_device.h index 18cc7d1e14f1..eed401152101 100644 --- a/drivers/staging/meilhaus/me6000_device.h +++ b/drivers/staging/meilhaus/me6000_device.h @@ -103,7 +103,7 @@ static me6000_version_t me6000_versions[] = { {0}, }; -#define ME6000_DEVICE_VERSIONS (sizeof(me6000_versions) / sizeof(me6000_version_t) - 1) /**< Returns the number of entries in #me6000_versions. */ +#define ME6000_DEVICE_VERSIONS (ARRAY_SIZE(me6000_versions) - 1) /**< Returns the number of entries in #me6000_versions. */ /** * @brief Returns the index of the device entry in #me6000_versions. diff --git a/drivers/staging/meilhaus/me8100_device.h b/drivers/staging/meilhaus/me8100_device.h index 44c42efb04e2..238dc0622801 100644 --- a/drivers/staging/meilhaus/me8100_device.h +++ b/drivers/staging/meilhaus/me8100_device.h @@ -53,7 +53,7 @@ static me8100_version_t me8100_versions[] = { {0}, }; -#define ME8100_DEVICE_VERSIONS (sizeof(me8100_versions) / sizeof(me8100_version_t) - 1) /**< Returns the number of entries in #me8100_versions. */ +#define ME8100_DEVICE_VERSIONS (ARRAY_SIZE(me8100_versions) - 1) /**< Returns the number of entries in #me8100_versions. */ /** * @brief Returns the index of the device entry in #me8100_versions. diff --git a/drivers/staging/meilhaus/me8200_device.h b/drivers/staging/meilhaus/me8200_device.h index cbd2a01ddb41..66f50842dac0 100644 --- a/drivers/staging/meilhaus/me8200_device.h +++ b/drivers/staging/meilhaus/me8200_device.h @@ -53,7 +53,7 @@ static me8200_version_t me8200_versions[] = { {0}, }; -#define ME8200_DEVICE_VERSIONS (sizeof(me8200_versions) / sizeof(me8200_version_t) - 1) /**< Returns the number of entries in #me8200_versions. */ +#define ME8200_DEVICE_VERSIONS (ARRAY_SIZE(me8200_versions) - 1) /**< Returns the number of entries in #me8200_versions. */ /** * @brief Returns the index of the device entry in #me8200_versions. diff --git a/drivers/staging/meilhaus/metempl_device.h b/drivers/staging/meilhaus/metempl_device.h index 3c3702cc72eb..c0626e7b73a7 100644 --- a/drivers/staging/meilhaus/metempl_device.h +++ b/drivers/staging/meilhaus/metempl_device.h @@ -50,7 +50,7 @@ static metempl_version_t metempl_versions[] = { {0}, }; -#define METEMPL_DEVICE_VERSIONS (sizeof(metempl_versions) / sizeof(metempl_version_t) - 1) /**< Returns the number of entries in #metempl_versions. */ +#define METEMPL_DEVICE_VERSIONS (ARRAY_SIZE(metempl_versions) - 1) /**< Returns the number of entries in #metempl_versions. */ /** * @brief Returns the index of the device entry in #metempl_versions. diff --git a/drivers/staging/rtl8187se/r8180_wx.c b/drivers/staging/rtl8187se/r8180_wx.c index 081c022f0bc2..766892e31f52 100644 --- a/drivers/staging/rtl8187se/r8180_wx.c +++ b/drivers/staging/rtl8187se/r8180_wx.c @@ -27,7 +27,7 @@ u32 rtl8180_rates[] = {1000000,2000000,5500000,11000000, 6000000,9000000,12000000,18000000,24000000,36000000,48000000,54000000}; -#define RATE_COUNT (sizeof(rtl8180_rates)/sizeof(rtl8180_rates[0])) +#define RATE_COUNT ARRAY_SIZE(rtl8180_rates) static CHANNEL_LIST DefaultChannelPlan[] = { // {{1,2,3,4,5,6,7,8,9,10,11,12,13,14},14}, //Default channel plan @@ -1578,9 +1578,9 @@ static struct iw_statistics *r8180_get_wireless_stats(struct net_device *dev) struct iw_handler_def r8180_wx_handlers_def={ .standard = r8180_wx_handlers, - .num_standard = sizeof(r8180_wx_handlers) / sizeof(iw_handler), + .num_standard = ARRAY_SIZE(r8180_wx_handlers), .private = r8180_private_handler, - .num_private = sizeof(r8180_private_handler) / sizeof(iw_handler), + .num_private = ARRAY_SIZE(r8180_private_handler), .num_private_args = sizeof(r8180_private_args) / sizeof(struct iw_priv_args), .get_wireless_stats = r8180_get_wireless_stats, .private_args = (struct iw_priv_args *)r8180_private_args, diff --git a/drivers/staging/rtl8192su/ieee80211/ieee80211_wx.c b/drivers/staging/rtl8192su/ieee80211/ieee80211_wx.c index 3afd8b34f68c..145a3120c6bb 100644 --- a/drivers/staging/rtl8192su/ieee80211/ieee80211_wx.c +++ b/drivers/staging/rtl8192su/ieee80211/ieee80211_wx.c @@ -87,7 +87,7 @@ static inline char *rtl819x_translate_scan(struct ieee80211_device *ieee, } /* Add the protocol name */ iwe.cmd = SIOCGIWNAME; - for(i=0; i<(sizeof(ieee80211_modes)/sizeof(ieee80211_modes[0])); i++) { + for(i=0; imode&(1<