diff options
author | Markus Elfring <elfring@users.sourceforge.net> | 2016-09-13 05:32:22 -0400 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2016-10-30 18:21:46 -0400 |
commit | 668866b6e8dffa5583d8694f1d8ddd89a8bee745 (patch) | |
tree | ca54a952922680beec7b2a132b71a2cd4815af7b | |
parent | 3dae2c6152fbbc6224343551158b61aad585cedf (diff) |
virtio_blk: Use kmalloc_array() in init_vq()
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>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-rw-r--r-- | drivers/block/virtio_blk.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c index 2dc5c96c186a..b2bc62b9fbe6 100644 --- a/drivers/block/virtio_blk.c +++ b/drivers/block/virtio_blk.c | |||
@@ -390,13 +390,13 @@ static int init_vq(struct virtio_blk *vblk) | |||
390 | if (err) | 390 | if (err) |
391 | num_vqs = 1; | 391 | num_vqs = 1; |
392 | 392 | ||
393 | vblk->vqs = kmalloc(sizeof(*vblk->vqs) * num_vqs, GFP_KERNEL); | 393 | vblk->vqs = kmalloc_array(num_vqs, sizeof(*vblk->vqs), GFP_KERNEL); |
394 | if (!vblk->vqs) | 394 | if (!vblk->vqs) |
395 | return -ENOMEM; | 395 | return -ENOMEM; |
396 | 396 | ||
397 | names = kmalloc(sizeof(*names) * num_vqs, GFP_KERNEL); | 397 | names = kmalloc_array(num_vqs, sizeof(*names), GFP_KERNEL); |
398 | callbacks = kmalloc(sizeof(*callbacks) * num_vqs, GFP_KERNEL); | 398 | callbacks = kmalloc_array(num_vqs, sizeof(*callbacks), GFP_KERNEL); |
399 | vqs = kmalloc(sizeof(*vqs) * num_vqs, GFP_KERNEL); | 399 | vqs = kmalloc_array(num_vqs, sizeof(*vqs), GFP_KERNEL); |
400 | if (!names || !callbacks || !vqs) { | 400 | if (!names || !callbacks || !vqs) { |
401 | err = -ENOMEM; | 401 | err = -ENOMEM; |
402 | goto out; | 402 | goto out; |