[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] xen-blkfront: Use kcalloc instead of kzalloc to allocate array
The advantage of kcalloc is, that will prevent integer overflows which could result from the multiplication of number of elements and size and it is also a bit nicer to read. The semantic patch that makes this change is available in https://lkml.org/lkml/2011/11/25/107 Signed-off-by: Thomas Meyer <thomas@xxxxxxxx> --- diff -u -p a/drivers/block/cciss_scsi.c b/drivers/block/cciss_scsi.c --- a/drivers/block/cciss_scsi.c 2011-11-28 19:36:47.343430551 +0100 +++ b/drivers/block/cciss_scsi.c 2011-11-28 19:49:24.922716381 +0100 @@ -534,10 +534,10 @@ adjust_cciss_scsi_table(ctlr_info_t *h, int nadded, nremoved; struct Scsi_Host *sh = NULL; - added = kzalloc(sizeof(*added) * CCISS_MAX_SCSI_DEVS_PER_HBA, - GFP_KERNEL); - removed = kzalloc(sizeof(*removed) * CCISS_MAX_SCSI_DEVS_PER_HBA, + added = kcalloc(CCISS_MAX_SCSI_DEVS_PER_HBA, sizeof(*added), GFP_KERNEL); + removed = kcalloc(CCISS_MAX_SCSI_DEVS_PER_HBA, sizeof(*removed), + GFP_KERNEL); if (!added || !removed) { dev_warn(&h->pdev->dev, @@ -1191,8 +1191,8 @@ cciss_update_non_disk_devices(ctlr_info_ ld_buff = kzalloc(reportlunsize, GFP_KERNEL); inq_buff = kmalloc(OBDR_TAPE_INQ_SIZE, GFP_KERNEL); - currentsd = kzalloc(sizeof(*currentsd) * - (CCISS_MAX_SCSI_DEVS_PER_HBA+1), GFP_KERNEL); + currentsd = kcalloc(CCISS_MAX_SCSI_DEVS_PER_HBA + 1, + sizeof(*currentsd), GFP_KERNEL); if (ld_buff == NULL || inq_buff == NULL || currentsd == NULL) { printk(KERN_ERR "cciss: out of memory\n"); goto out; diff -u -p a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c --- a/drivers/block/xen-blkfront.c 2011-11-13 11:07:22.680095573 +0100 +++ b/drivers/block/xen-blkfront.c 2011-11-28 19:49:29.109460410 +0100 @@ -156,7 +156,7 @@ static int xlbd_reserve_minors(unsigned if (end > nr_minors) { unsigned long *bitmap, *old; - bitmap = kzalloc(BITS_TO_LONGS(end) * sizeof(*bitmap), + bitmap = kcalloc(BITS_TO_LONGS(end), sizeof(*bitmap), GFP_KERNEL); if (bitmap == NULL) return -ENOMEM; _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |