Re: [PATCH] drivers: Conversions from kmalloc+memset to k(z|c)alloc.

From: Paul Mackerras
Date: Wed Jul 19 2006 - 08:51:25 EST


Panagiotis Issaris writes:

> diff --git a/drivers/video/aty/atyfb_base.c b/drivers/video/aty/atyfb_base.c
> index 1507d19..48c6f83 100644
> --- a/drivers/video/aty/atyfb_base.c
> +++ b/drivers/video/aty/atyfb_base.c
> @@ -2995,12 +2995,11 @@ static int __devinit atyfb_setup_sparc(s
> /* nothing */ ;
> j = i + 4;
>
> - par->mmap_map = kmalloc(j * sizeof(*par->mmap_map), GFP_ATOMIC);
> + par->mmap_map = kcalloc(j, sizeof(*par->mmap_map), GFP_ATOMIC);
> if (!par->mmap_map) {
> PRINTKE("atyfb_setup_sparc() can't alloc mmap_map\n");
> return -ENOMEM;
> }
> - memset(par->mmap_map, 0, j * sizeof(*par->mmap_map));

What exactly do we gain by using kcalloc rather than kzalloc here?
There is no potential overflow issue to worry about.

> @@ -464,7 +463,7 @@ #ifdef __sparc__
> * one additional region with size == 0.
> */
>
> - par->mmap_map = kmalloc(4 * sizeof(*par->mmap_map), GFP_ATOMIC);
> + par->mmap_map = kcalloc(4, sizeof(*par->mmap_map), GFP_ATOMIC);

Likewise.

Paul.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/