Commit 1f118bc4 authored by Akinobu Mita's avatar Akinobu Mita Committed by Jens Axboe

cciss: cleanup bitops usage

- Remove unnecessary correction of bit and address
- Use BITS_TO_LONGS macro to calculate bitmap size
- Use bitmap_zero()
Signed-off-by: default avatarAkinobu Mita <akinobu.mita@gmail.com>
Cc: Mike Miller <mike.miller@hp.com>
Cc: Stephen M. Cameron <scameron@beardog.cce.hp.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 8d0ff392
...@@ -41,6 +41,7 @@ ...@@ -41,6 +41,7 @@
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/compat.h> #include <linux/compat.h>
#include <linux/mutex.h> #include <linux/mutex.h>
#include <linux/bitmap.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/io.h> #include <asm/io.h>
...@@ -978,8 +979,7 @@ static CommandList_struct *cmd_alloc(ctlr_info_t *h) ...@@ -978,8 +979,7 @@ static CommandList_struct *cmd_alloc(ctlr_info_t *h)
i = find_first_zero_bit(h->cmd_pool_bits, h->nr_cmds); i = find_first_zero_bit(h->cmd_pool_bits, h->nr_cmds);
if (i == h->nr_cmds) if (i == h->nr_cmds)
return NULL; return NULL;
} while (test_and_set_bit(i & (BITS_PER_LONG - 1), } while (test_and_set_bit(i, h->cmd_pool_bits) != 0);
h->cmd_pool_bits + (i / BITS_PER_LONG)) != 0);
c = h->cmd_pool + i; c = h->cmd_pool + i;
memset(c, 0, sizeof(CommandList_struct)); memset(c, 0, sizeof(CommandList_struct));
cmd_dma_handle = h->cmd_pool_dhandle + i * sizeof(CommandList_struct); cmd_dma_handle = h->cmd_pool_dhandle + i * sizeof(CommandList_struct);
...@@ -1046,8 +1046,7 @@ static void cmd_free(ctlr_info_t *h, CommandList_struct *c) ...@@ -1046,8 +1046,7 @@ static void cmd_free(ctlr_info_t *h, CommandList_struct *c)
int i; int i;
i = c - h->cmd_pool; i = c - h->cmd_pool;
clear_bit(i & (BITS_PER_LONG - 1), clear_bit(i, h->cmd_pool_bits);
h->cmd_pool_bits + (i / BITS_PER_LONG));
h->nr_frees++; h->nr_frees++;
} }
...@@ -4812,8 +4811,7 @@ static __devinit int cciss_init_reset_devices(struct pci_dev *pdev) ...@@ -4812,8 +4811,7 @@ static __devinit int cciss_init_reset_devices(struct pci_dev *pdev)
static __devinit int cciss_allocate_cmd_pool(ctlr_info_t *h) static __devinit int cciss_allocate_cmd_pool(ctlr_info_t *h)
{ {
h->cmd_pool_bits = kmalloc( h->cmd_pool_bits = kmalloc(BITS_TO_LONGS(h->nr_cmds) *
DIV_ROUND_UP(h->nr_cmds, BITS_PER_LONG) *
sizeof(unsigned long), GFP_KERNEL); sizeof(unsigned long), GFP_KERNEL);
h->cmd_pool = pci_alloc_consistent(h->pdev, h->cmd_pool = pci_alloc_consistent(h->pdev,
h->nr_cmds * sizeof(CommandList_struct), h->nr_cmds * sizeof(CommandList_struct),
...@@ -5068,9 +5066,7 @@ static int __devinit cciss_init_one(struct pci_dev *pdev, ...@@ -5068,9 +5066,7 @@ static int __devinit cciss_init_one(struct pci_dev *pdev,
pci_set_drvdata(pdev, h); pci_set_drvdata(pdev, h);
/* command and error info recs zeroed out before /* command and error info recs zeroed out before
they are used */ they are used */
memset(h->cmd_pool_bits, 0, bitmap_zero(h->cmd_pool_bits, h->nr_cmds);
DIV_ROUND_UP(h->nr_cmds, BITS_PER_LONG)
* sizeof(unsigned long));
h->num_luns = 0; h->num_luns = 0;
h->highest_lun = -1; h->highest_lun = -1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment