Skip to content

Commit

Permalink
[SCSI] kmalloc + memset conversion to kzalloc
Browse files Browse the repository at this point in the history
In NCR_D700, a4000t, aic7xxx_old, bvme6000, dpt_i2o, gdth, lpfc,
megaraid, mvme16x osst, pluto, qla2xxx, zorro7xx

Signed-off-by: Mariusz Kozlowski <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
  • Loading branch information
Mariusz Kozlowski authored and James Bottomley committed Oct 12, 2007
1 parent f36789e commit bbfbbbc
Show file tree
Hide file tree
Showing 15 changed files with 44 additions and 67 deletions.
4 changes: 2 additions & 2 deletions drivers/scsi/NCR_D700.c
Original file line number Diff line number Diff line change
Expand Up @@ -313,10 +313,10 @@ NCR_D700_probe(struct device *dev)
break;
}

p = kmalloc(sizeof(*p), GFP_KERNEL);
p = kzalloc(sizeof(*p), GFP_KERNEL);
if (!p)
return -ENOMEM;
memset(p, '\0', sizeof(*p));

p->dev = dev;
snprintf(p->name, sizeof(p->name), "D700(%s)", dev->bus_id);
if (request_irq(irq, NCR_D700_intr, IRQF_SHARED, p->name, p)) {
Expand Down
7 changes: 3 additions & 4 deletions drivers/scsi/a4000t.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ static struct platform_device *a4000t_scsi_device;

static int __devinit a4000t_probe(struct device *dev)
{
struct Scsi_Host * host = NULL;
struct Scsi_Host *host;
struct NCR_700_Host_Parameters *hostdata;

if (!(MACH_IS_AMIGA && AMIGAHW_PRESENT(A4000_SCSI)))
Expand All @@ -47,12 +47,11 @@ static int __devinit a4000t_probe(struct device *dev)
"A4000T builtin SCSI"))
goto out;

hostdata = kmalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (hostdata == NULL) {
hostdata = kzalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (!hostdata) {
printk(KERN_ERR "a4000t-scsi: Failed to allocate host data\n");
goto out_release;
}
memset(hostdata, 0, sizeof(struct NCR_700_Host_Parameters));

/* Fill in the required pieces of hostdata */
hostdata->base = (void __iomem *)ZTWO_VADDR(A4000T_SCSI_ADDR);
Expand Down
8 changes: 3 additions & 5 deletions drivers/scsi/aic7xxx_old.c
Original file line number Diff line number Diff line change
Expand Up @@ -8416,10 +8416,9 @@ aic7xxx_alloc(struct scsi_host_template *sht, struct aic7xxx_host *temp)
*p = *temp;
p->host = host;

p->scb_data = kmalloc(sizeof(scb_data_type), GFP_ATOMIC);
if (p->scb_data != NULL)
p->scb_data = kzalloc(sizeof(scb_data_type), GFP_ATOMIC);
if (!p->scb_data)
{
memset(p->scb_data, 0, sizeof(scb_data_type));
scbq_init (&p->scb_data->free_scbs);
}
else
Expand Down Expand Up @@ -9196,10 +9195,9 @@ aic7xxx_detect(struct scsi_host_template *template)
printk(KERN_INFO " this driver, we are ignoring it.\n");
}
}
else if ( (temp_p = kmalloc(sizeof(struct aic7xxx_host),
else if ( (temp_p = kzalloc(sizeof(struct aic7xxx_host),
GFP_ATOMIC)) != NULL )
{
memset(temp_p, 0, sizeof(struct aic7xxx_host));
temp_p->chip = aic_pdevs[i].chip | AHC_PCI;
temp_p->flags = aic_pdevs[i].flags;
temp_p->features = aic_pdevs[i].features;
Expand Down
7 changes: 3 additions & 4 deletions drivers/scsi/bvme6000_scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,18 @@ static struct platform_device *bvme6000_scsi_device;
static __devinit int
bvme6000_probe(struct device *dev)
{
struct Scsi_Host * host = NULL;
struct Scsi_Host *host;
struct NCR_700_Host_Parameters *hostdata;

if (!MACH_IS_BVME6000)
goto out;

hostdata = kmalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (hostdata == NULL) {
hostdata = kzalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (!hostdata) {
printk(KERN_ERR "bvme6000-scsi: "
"Failed to allocate host data\n");
goto out;
}
memset(hostdata, 0, sizeof(struct NCR_700_Host_Parameters));

/* Fill in the required pieces of hostdata */
hostdata->base = (void __iomem *)BVME_NCR53C710_BASE;
Expand Down
27 changes: 11 additions & 16 deletions drivers/scsi/dpt_i2o.c
Original file line number Diff line number Diff line change
Expand Up @@ -949,16 +949,14 @@ static int adpt_install_hba(struct pci_dev* pDev)
}

// Allocate and zero the data structure
pHba = kmalloc(sizeof(adpt_hba), GFP_KERNEL);
if( pHba == NULL) {
if(msg_addr_virt != base_addr_virt){
pHba = kzalloc(sizeof(adpt_hba), GFP_KERNEL);
if (!pHba) {
if (msg_addr_virt != base_addr_virt)
iounmap(msg_addr_virt);
}
iounmap(base_addr_virt);
pci_release_regions(pDev);
return -ENOMEM;
}
memset(pHba, 0, sizeof(adpt_hba));

mutex_lock(&adpt_configuration_lock);

Expand Down Expand Up @@ -2622,14 +2620,13 @@ static s32 adpt_i2o_init_outbound_q(adpt_hba* pHba)

msg=(u32 __iomem *)(pHba->msg_addr_virt+m);

status = kmalloc(4,GFP_KERNEL|ADDR32);
if (status==NULL) {
status = kzalloc(4, GFP_KERNEL|ADDR32);
if (!status) {
adpt_send_nop(pHba, m);
printk(KERN_WARNING"%s: IOP reset failed - no free memory.\n",
pHba->name);
return -ENOMEM;
}
memset(status, 0, 4);

writel(EIGHT_WORD_MSG_SIZE| SGL_OFFSET_6, &msg[0]);
writel(I2O_CMD_OUTBOUND_INIT<<24 | HOST_TID<<12 | ADAPTER_TID, &msg[1]);
Expand Down Expand Up @@ -2668,12 +2665,11 @@ static s32 adpt_i2o_init_outbound_q(adpt_hba* pHba)

kfree(pHba->reply_pool);

pHba->reply_pool = kmalloc(pHba->reply_fifo_size * REPLY_FRAME_SIZE * 4, GFP_KERNEL|ADDR32);
if(!pHba->reply_pool){
printk(KERN_ERR"%s: Could not allocate reply pool\n",pHba->name);
return -1;
pHba->reply_pool = kzalloc(pHba->reply_fifo_size * REPLY_FRAME_SIZE * 4, GFP_KERNEL|ADDR32);
if (!pHba->reply_pool) {
printk(KERN_ERR "%s: Could not allocate reply pool\n", pHba->name);
return -ENOMEM;
}
memset(pHba->reply_pool, 0 , pHba->reply_fifo_size * REPLY_FRAME_SIZE * 4);

ptr = pHba->reply_pool;
for(i = 0; i < pHba->reply_fifo_size; i++) {
Expand Down Expand Up @@ -2884,12 +2880,11 @@ static int adpt_i2o_build_sys_table(void)

kfree(sys_tbl);

sys_tbl = kmalloc(sys_tbl_len, GFP_KERNEL|ADDR32);
if(!sys_tbl) {
sys_tbl = kzalloc(sys_tbl_len, GFP_KERNEL|ADDR32);
if (!sys_tbl) {
printk(KERN_WARNING "SysTab Set failed. Out of memory.\n");
return -ENOMEM;
}
memset(sys_tbl, 0, sys_tbl_len);

sys_tbl->num_entries = hba_count;
sys_tbl->version = I2OVERSION;
Expand Down
7 changes: 3 additions & 4 deletions drivers/scsi/gdth.c
Original file line number Diff line number Diff line change
Expand Up @@ -726,10 +726,10 @@ int __gdth_execute(struct scsi_device *sdev, gdth_cmd_str *gdtcmd, char *cmnd,
DECLARE_COMPLETION_ONSTACK(wait);
int rval;

scp = kmalloc(sizeof(*scp), GFP_KERNEL);
scp = kzalloc(sizeof(*scp), GFP_KERNEL);
if (!scp)
return -ENOMEM;
memset(scp, 0, sizeof(*scp));

scp->device = sdev;
/* use request field to save the ptr. to completion struct. */
scp->request = (struct request *)&wait;
Expand Down Expand Up @@ -5518,10 +5518,9 @@ static int gdth_ioctl(struct inode *inode, struct file *filep,
ha = HADATA(gdth_ctr_tab[hanum]);

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
scp = kmalloc(sizeof(*scp), GFP_KERNEL);
scp = kzalloc(sizeof(*scp), GFP_KERNEL);
if (!scp)
return -ENOMEM;
memset(scp, 0, sizeof(*scp));
scp->device = ha->sdev;
scp->cmd_len = 12;
scp->use_sg = 0;
Expand Down
4 changes: 1 addition & 3 deletions drivers/scsi/lpfc/lpfc_debugfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -901,7 +901,7 @@ lpfc_debugfs_initialize(struct lpfc_vport *vport)
}
}

vport->disc_trc = kmalloc(
vport->disc_trc = kmzlloc(
(sizeof(struct lpfc_debugfs_trc) * lpfc_debugfs_max_disc_trc),
GFP_KERNEL);

Expand All @@ -912,8 +912,6 @@ lpfc_debugfs_initialize(struct lpfc_vport *vport)
goto debug_failed;
}
atomic_set(&vport->disc_trc_cnt, 0);
memset(vport->disc_trc, 0,
(sizeof(struct lpfc_debugfs_trc) * lpfc_debugfs_max_disc_trc));

snprintf(name, sizeof(name), "discovery_trace");
vport->debug_disc_trc =
Expand Down
3 changes: 1 addition & 2 deletions drivers/scsi/lpfc/lpfc_init.c
Original file line number Diff line number Diff line change
Expand Up @@ -1265,11 +1265,10 @@ lpfc_hba_init(struct lpfc_hba *phba, uint32_t *hbainit)
uint32_t *HashWorking;
uint32_t *pwwnn = (uint32_t *) phba->wwnn;

HashWorking = kmalloc(80 * sizeof(uint32_t), GFP_KERNEL);
HashWorking = kcalloc(80, sizeof(uint32_t), GFP_KERNEL);
if (!HashWorking)
return;

memset(HashWorking, 0, (80 * sizeof(uint32_t)));
HashWorking[0] = HashWorking[78] = *pwwnn++;
HashWorking[1] = HashWorking[79] = *pwwnn;

Expand Down
3 changes: 1 addition & 2 deletions drivers/scsi/lpfc/lpfc_scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -202,10 +202,9 @@ lpfc_new_scsi_buf(struct lpfc_vport *vport)
dma_addr_t pdma_phys;
uint16_t iotag;

psb = kmalloc(sizeof(struct lpfc_scsi_buf), GFP_KERNEL);
psb = kzalloc(sizeof(struct lpfc_scsi_buf), GFP_KERNEL);
if (!psb)
return NULL;
memset(psb, 0, sizeof (struct lpfc_scsi_buf));

/*
* Get memory from the pci pool to map the virt space to pci bus space
Expand Down
3 changes: 1 addition & 2 deletions drivers/scsi/megaraid.c
Original file line number Diff line number Diff line change
Expand Up @@ -4408,8 +4408,7 @@ mega_internal_command(adapter_t *adapter, megacmd_t *mc, mega_passthru *pthru)
scmd = &adapter->int_scmd;
memset(scmd, 0, sizeof(Scsi_Cmnd));

sdev = kmalloc(sizeof(struct scsi_device), GFP_KERNEL);
memset(sdev, 0, sizeof(struct scsi_device));
sdev = kzalloc(sizeof(struct scsi_device), GFP_KERNEL);
scmd->device = sdev;

scmd->device->host = adapter->host;
Expand Down
3 changes: 1 addition & 2 deletions drivers/scsi/mvme16x_scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,12 @@ mvme16x_probe(struct device *dev)
goto out;
}

hostdata = kmalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
hostdata = kzalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (hostdata == NULL) {
printk(KERN_ERR "mvme16x-scsi: "
"Failed to allocate host data\n");
goto out;
}
memset(hostdata, 0, sizeof(struct NCR_700_Host_Parameters));

/* Fill in the required pieces of hostdata */
hostdata->base = (void __iomem *)0xfff47000UL;
Expand Down
5 changes: 2 additions & 3 deletions drivers/scsi/osst.c
Original file line number Diff line number Diff line change
Expand Up @@ -5778,13 +5778,12 @@ static int osst_probe(struct device *dev)
dev_num = i;

/* allocate a struct osst_tape for this device */
tpnt = kmalloc(sizeof(struct osst_tape), GFP_ATOMIC);
if (tpnt == NULL) {
tpnt = kzalloc(sizeof(struct osst_tape), GFP_ATOMIC);
if (!tpnt) {
write_unlock(&os_scsi_tapes_lock);
printk(KERN_ERR "osst :E: Can't allocate device descriptor, device not attached.\n");
goto out_put_disk;
}
memset(tpnt, 0, sizeof(struct osst_tape));

/* allocate a buffer for this device */
i = SDp->host->sg_tablesize;
Expand Down
8 changes: 3 additions & 5 deletions drivers/scsi/pluto.c
Original file line number Diff line number Diff line change
Expand Up @@ -111,13 +111,12 @@ int __init pluto_detect(struct scsi_host_template *tpnt)
#endif
return 0;
}
fcs = kmalloc(sizeof (struct ctrl_inquiry) * fcscount, GFP_DMA);
fcs = kcalloc(fcscount, sizeof (struct ctrl_inquiry), GFP_DMA);
if (!fcs) {
printk ("PLUTO: Not enough memory to probe\n");
return 0;
}

memset (fcs, 0, sizeof (struct ctrl_inquiry) * fcscount);
memset (&dev, 0, sizeof(dev));
atomic_set (&fcss, fcscount);

Expand Down Expand Up @@ -211,7 +210,7 @@ int __init pluto_detect(struct scsi_host_template *tpnt)
char *p;
long *ages;

ages = kmalloc (((inq->channels + 1) * inq->targets) * sizeof(long), GFP_KERNEL);
ages = kcalloc((inq->channels + 1) * inq->targets, sizeof(long), GFP_KERNEL);
if (!ages) continue;

host = scsi_register (tpnt, sizeof (struct pluto));
Expand All @@ -238,7 +237,6 @@ int __init pluto_detect(struct scsi_host_template *tpnt)
fc->channels = inq->channels + 1;
fc->targets = inq->targets;
fc->ages = ages;
memset (ages, 0, ((inq->channels + 1) * inq->targets) * sizeof(long));

pluto->fc = fc;
memcpy (pluto->rev_str, inq->revision, 4);
Expand All @@ -260,7 +258,7 @@ int __init pluto_detect(struct scsi_host_template *tpnt)
} else
fc->fcp_register(fc, TYPE_SCSI_FCP, 1);
}
kfree((char *)fcs);
kfree(fcs);
if (nplutos)
printk ("PLUTO: Total of %d SparcSTORAGE Arrays found\n", nplutos);
return nplutos;
Expand Down
14 changes: 6 additions & 8 deletions drivers/scsi/qla2xxx/qla_init.c
Original file line number Diff line number Diff line change
Expand Up @@ -1786,12 +1786,11 @@ qla2x00_alloc_fcport(scsi_qla_host_t *ha, gfp_t flags)
{
fc_port_t *fcport;

fcport = kmalloc(sizeof(fc_port_t), flags);
if (fcport == NULL)
return (fcport);
fcport = kzalloc(sizeof(fc_port_t), flags);
if (!fcport)
return NULL;

/* Setup fcport template structure. */
memset(fcport, 0, sizeof (fc_port_t));
fcport->ha = ha;
fcport->vp_idx = ha->vp_idx;
fcport->port_type = FCT_UNKNOWN;
Expand All @@ -1801,7 +1800,7 @@ qla2x00_alloc_fcport(scsi_qla_host_t *ha, gfp_t flags)
fcport->supported_classes = FC_COS_UNSPECIFIED;
spin_lock_init(&fcport->rport_lock);

return (fcport);
return fcport;
}

/*
Expand Down Expand Up @@ -2473,13 +2472,12 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *ha, struct list_head *new_fcports)
rval = QLA_SUCCESS;

/* Try GID_PT to get device list, else GAN. */
swl = kmalloc(sizeof(sw_info_t) * MAX_FIBRE_DEVICES, GFP_ATOMIC);
if (swl == NULL) {
swl = kcalloc(MAX_FIBRE_DEVICES, sizeof(sw_info_t), GFP_ATOMIC);
if (!swl) {
/*EMPTY*/
DEBUG2(printk("scsi(%ld): GID_PT allocations failed, fallback "
"on GA_NXT\n", ha->host_no));
} else {
memset(swl, 0, sizeof(sw_info_t) * MAX_FIBRE_DEVICES);
if (qla2x00_gid_pt(ha, swl) != QLA_SUCCESS) {
kfree(swl);
swl = NULL;
Expand Down
8 changes: 3 additions & 5 deletions drivers/scsi/zorro7xx.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ static struct zorro_device_id zorro7xx_zorro_tbl[] __devinitdata = {
static int __devinit zorro7xx_init_one(struct zorro_dev *z,
const struct zorro_device_id *ent)
{
struct Scsi_Host * host = NULL;
struct Scsi_Host *host;
struct NCR_700_Host_Parameters *hostdata;
struct zorro_driver_data *zdd;
unsigned long board, ioaddr;
Expand All @@ -89,14 +89,12 @@ static int __devinit zorro7xx_init_one(struct zorro_dev *z,
return -EBUSY;
}

hostdata = kmalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (hostdata == NULL) {
hostdata = kzalloc(sizeof(struct NCR_700_Host_Parameters), GFP_KERNEL);
if (!hostdata) {
printk(KERN_ERR "zorro7xx: Failed to allocate host data\n");
goto out_release;
}

memset(hostdata, 0, sizeof(struct NCR_700_Host_Parameters));

/* Fill in the required pieces of hostdata */
if (ioaddr > 0x01000000)
hostdata->base = ioremap(ioaddr, zorro_resource_len(z));
Expand Down

0 comments on commit bbfbbbc

Please sign in to comment.