drivers: use kzalloc/kcalloc instead of 'kmalloc+memset', where possible
Signed-off-by: Rakib Mullick <rakib.mullick@gmail.com> Cc: Jeff Garzik <jgarzik@pobox.com> Cc: David Airlie <airlied@linux.ie> Cc: Tejun Heo <tj@kernel.org> Cc: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
f1c93e4946
commit
f35119d668
|
@ -1642,13 +1642,12 @@ static int sata_dwc_probe(struct platform_device *ofdev)
|
||||||
const struct ata_port_info *ppi[] = { &pi, NULL };
|
const struct ata_port_info *ppi[] = { &pi, NULL };
|
||||||
|
|
||||||
/* Allocate DWC SATA device */
|
/* Allocate DWC SATA device */
|
||||||
hsdev = kmalloc(sizeof(*hsdev), GFP_KERNEL);
|
hsdev = kzalloc(sizeof(*hsdev), GFP_KERNEL);
|
||||||
if (hsdev == NULL) {
|
if (hsdev == NULL) {
|
||||||
dev_err(&ofdev->dev, "kmalloc failed for hsdev\n");
|
dev_err(&ofdev->dev, "kmalloc failed for hsdev\n");
|
||||||
err = -ENOMEM;
|
err = -ENOMEM;
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
memset(hsdev, 0, sizeof(*hsdev));
|
|
||||||
|
|
||||||
/* Ioremap SATA registers */
|
/* Ioremap SATA registers */
|
||||||
base = of_iomap(ofdev->dev.of_node, 0);
|
base = of_iomap(ofdev->dev.of_node, 0);
|
||||||
|
|
|
@ -83,30 +83,26 @@ int drm_sg_alloc(struct drm_device *dev, struct drm_scatter_gather * request)
|
||||||
if (dev->sg)
|
if (dev->sg)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
entry = kmalloc(sizeof(*entry), GFP_KERNEL);
|
entry = kzalloc(sizeof(*entry), GFP_KERNEL);
|
||||||
if (!entry)
|
if (!entry)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
memset(entry, 0, sizeof(*entry));
|
|
||||||
pages = (request->size + PAGE_SIZE - 1) / PAGE_SIZE;
|
pages = (request->size + PAGE_SIZE - 1) / PAGE_SIZE;
|
||||||
DRM_DEBUG("size=%ld pages=%ld\n", request->size, pages);
|
DRM_DEBUG("size=%ld pages=%ld\n", request->size, pages);
|
||||||
|
|
||||||
entry->pages = pages;
|
entry->pages = pages;
|
||||||
entry->pagelist = kmalloc(pages * sizeof(*entry->pagelist), GFP_KERNEL);
|
entry->pagelist = kcalloc(pages, sizeof(*entry->pagelist), GFP_KERNEL);
|
||||||
if (!entry->pagelist) {
|
if (!entry->pagelist) {
|
||||||
kfree(entry);
|
kfree(entry);
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
memset(entry->pagelist, 0, pages * sizeof(*entry->pagelist));
|
entry->busaddr = kcalloc(pages, sizeof(*entry->busaddr), GFP_KERNEL);
|
||||||
|
|
||||||
entry->busaddr = kmalloc(pages * sizeof(*entry->busaddr), GFP_KERNEL);
|
|
||||||
if (!entry->busaddr) {
|
if (!entry->busaddr) {
|
||||||
kfree(entry->pagelist);
|
kfree(entry->pagelist);
|
||||||
kfree(entry);
|
kfree(entry);
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
memset((void *)entry->busaddr, 0, pages * sizeof(*entry->busaddr));
|
|
||||||
|
|
||||||
entry->virtual = drm_vmalloc_dma(pages << PAGE_SHIFT);
|
entry->virtual = drm_vmalloc_dma(pages << PAGE_SHIFT);
|
||||||
if (!entry->virtual) {
|
if (!entry->virtual) {
|
||||||
|
|
|
@ -139,7 +139,7 @@ static int init_heap(struct mem_block **heap, int start, int size)
|
||||||
if (!blocks)
|
if (!blocks)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
*heap = kmalloc(sizeof(**heap), GFP_KERNEL);
|
*heap = kzalloc(sizeof(**heap), GFP_KERNEL);
|
||||||
if (!*heap) {
|
if (!*heap) {
|
||||||
kfree(blocks);
|
kfree(blocks);
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -150,7 +150,6 @@ static int init_heap(struct mem_block **heap, int start, int size)
|
||||||
blocks->file_priv = NULL;
|
blocks->file_priv = NULL;
|
||||||
blocks->next = blocks->prev = *heap;
|
blocks->next = blocks->prev = *heap;
|
||||||
|
|
||||||
memset(*heap, 0, sizeof(**heap));
|
|
||||||
(*heap)->file_priv = (struct drm_file *) - 1;
|
(*heap)->file_priv = (struct drm_file *) - 1;
|
||||||
(*heap)->next = (*heap)->prev = blocks;
|
(*heap)->next = (*heap)->prev = blocks;
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -585,11 +585,10 @@ int vmw_overlay_init(struct vmw_private *dev_priv)
|
||||||
return -ENOSYS;
|
return -ENOSYS;
|
||||||
}
|
}
|
||||||
|
|
||||||
overlay = kmalloc(sizeof(*overlay), GFP_KERNEL);
|
overlay = kzalloc(sizeof(*overlay), GFP_KERNEL);
|
||||||
if (!overlay)
|
if (!overlay)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
memset(overlay, 0, sizeof(*overlay));
|
|
||||||
mutex_init(&overlay->mutex);
|
mutex_init(&overlay->mutex);
|
||||||
for (i = 0; i < VMW_MAX_NUM_STREAMS; i++) {
|
for (i = 0; i < VMW_MAX_NUM_STREAMS; i++) {
|
||||||
overlay->stream[i].buf = NULL;
|
overlay->stream[i].buf = NULL;
|
||||||
|
|
|
@ -612,11 +612,9 @@ int vmw_surface_define_ioctl(struct drm_device *dev, void *data,
|
||||||
srf->sizes[0].height == 64 &&
|
srf->sizes[0].height == 64 &&
|
||||||
srf->format == SVGA3D_A8R8G8B8) {
|
srf->format == SVGA3D_A8R8G8B8) {
|
||||||
|
|
||||||
srf->snooper.image = kmalloc(64 * 64 * 4, GFP_KERNEL);
|
/* allocate image area and clear it */
|
||||||
/* clear the image */
|
srf->snooper.image = kzalloc(64 * 64 * 4, GFP_KERNEL);
|
||||||
if (srf->snooper.image) {
|
if (!srf->snooper.image) {
|
||||||
memset(srf->snooper.image, 0x00, 64 * 64 * 4);
|
|
||||||
} else {
|
|
||||||
DRM_ERROR("Failed to allocate cursor_image\n");
|
DRM_ERROR("Failed to allocate cursor_image\n");
|
||||||
ret = -ENOMEM;
|
ret = -ENOMEM;
|
||||||
goto out_err1;
|
goto out_err1;
|
||||||
|
|
|
@ -1171,10 +1171,9 @@ static int vga_arb_open(struct inode *inode, struct file *file)
|
||||||
|
|
||||||
pr_debug("%s\n", __func__);
|
pr_debug("%s\n", __func__);
|
||||||
|
|
||||||
priv = kmalloc(sizeof(struct vga_arb_private), GFP_KERNEL);
|
priv = kzalloc(sizeof(*priv), GFP_KERNEL);
|
||||||
if (priv == NULL)
|
if (priv == NULL)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
memset(priv, 0, sizeof(*priv));
|
|
||||||
spin_lock_init(&priv->lock);
|
spin_lock_init(&priv->lock);
|
||||||
file->private_data = priv;
|
file->private_data = priv;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue