drm/vmwgfx: Use kmalloc_array() in vmw_surface_define_ioctl()

Multiplications for the size determination of memory allocations
indicated that array data structures should be processed.
Thus use the corresponding function "kmalloc_array".

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
Signed-off-by: Sinclair Yeh <syeh@vmware.com>
This commit is contained in:
Markus Elfring 2016-09-22 21:54:33 +02:00 committed by Sinclair Yeh
parent a19440304d
commit 7ed3b39432
1 changed files with 6 additions and 4 deletions

View File

@ -763,14 +763,16 @@ int vmw_surface_define_ioctl(struct drm_device *dev, void *data,
memcpy(srf->mip_levels, req->mip_levels, sizeof(srf->mip_levels)); memcpy(srf->mip_levels, req->mip_levels, sizeof(srf->mip_levels));
srf->num_sizes = num_sizes; srf->num_sizes = num_sizes;
user_srf->size = size; user_srf->size = size;
srf->sizes = kmalloc_array(srf->num_sizes,
srf->sizes = kmalloc(srf->num_sizes * sizeof(*srf->sizes), GFP_KERNEL); sizeof(*srf->sizes),
GFP_KERNEL);
if (unlikely(srf->sizes == NULL)) { if (unlikely(srf->sizes == NULL)) {
ret = -ENOMEM; ret = -ENOMEM;
goto out_no_sizes; goto out_no_sizes;
} }
srf->offsets = kmalloc(srf->num_sizes * sizeof(*srf->offsets), srf->offsets = kmalloc_array(srf->num_sizes,
GFP_KERNEL); sizeof(*srf->offsets),
GFP_KERNEL);
if (unlikely(srf->offsets == NULL)) { if (unlikely(srf->offsets == NULL)) {
ret = -ENOMEM; ret = -ENOMEM;
goto out_no_offsets; goto out_no_offsets;