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/gpu/drm/radeon/radeon_gart.c b/drivers/gpu/drm/radeon/radeon_gart.c --- a/drivers/gpu/drm/radeon/radeon_gart.c 2011-11-13 11:07:24.266787250 +0100 +++ b/drivers/gpu/drm/radeon/radeon_gart.c 2011-11-28 19:50:09.760213006 +0100 @@ -274,8 +274,8 @@ int radeon_gart_init(struct radeon_devic radeon_gart_fini(rdev); return -ENOMEM; } - rdev->gart.ttm_alloced = kzalloc(sizeof(bool) * - rdev->gart.num_cpu_pages, GFP_KERNEL); + rdev->gart.ttm_alloced = kcalloc(rdev->gart.num_cpu_pages, + sizeof(bool), GFP_KERNEL); if (rdev->gart.ttm_alloced == NULL) { radeon_gart_fini(rdev); return -ENOMEM; diff -u -p a/drivers/gpu/drm/radeon/radeon_test.c b/drivers/gpu/drm/radeon/radeon_test.c --- a/drivers/gpu/drm/radeon/radeon_test.c 2011-11-13 11:07:24.296787724 +0100 +++ b/drivers/gpu/drm/radeon/radeon_test.c 2011-11-28 19:50:16.026995920 +0100 @@ -49,7 +49,7 @@ void radeon_test_moves(struct radeon_dev n -= rdev->ih.ring_size; n /= size; - gtt_obj = kzalloc(n * sizeof(*gtt_obj), GFP_KERNEL); + gtt_obj = kcalloc(n, sizeof(*gtt_obj), GFP_KERNEL); if (!gtt_obj) { DRM_ERROR("Failed to allocate %d pointers\n", n); r = 1; _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel