virtio_blk: Use kmalloc_array() in init_vq()
[cascardo/linux.git] / drivers / block / virtio_blk.c
index 2dc5c96..b2bc62b 100644 (file)
@@ -390,13 +390,13 @@ static int init_vq(struct virtio_blk *vblk)
        if (err)
                num_vqs = 1;
 
-       vblk->vqs = kmalloc(sizeof(*vblk->vqs) * num_vqs, GFP_KERNEL);
+       vblk->vqs = kmalloc_array(num_vqs, sizeof(*vblk->vqs), GFP_KERNEL);
        if (!vblk->vqs)
                return -ENOMEM;
 
-       names = kmalloc(sizeof(*names) * num_vqs, GFP_KERNEL);
-       callbacks = kmalloc(sizeof(*callbacks) * num_vqs, GFP_KERNEL);
-       vqs = kmalloc(sizeof(*vqs) * num_vqs, GFP_KERNEL);
+       names = kmalloc_array(num_vqs, sizeof(*names), GFP_KERNEL);
+       callbacks = kmalloc_array(num_vqs, sizeof(*callbacks), GFP_KERNEL);
+       vqs = kmalloc_array(num_vqs, sizeof(*vqs), GFP_KERNEL);
        if (!names || !callbacks || !vqs) {
                err = -ENOMEM;
                goto out;