Source
47
47
fifo->in = 0;
48
48
fifo->out = 0;
49
49
fifo->esize = esize;
50
50
51
51
if (size < 2) {
52
52
fifo->data = NULL;
53
53
fifo->mask = 0;
54
54
return -EINVAL;
55
55
}
56
56
57
-
fifo->data = kmalloc(size * esize, gfp_mask);
57
+
fifo->data = kmalloc_array(esize, size, gfp_mask);
58
58
59
59
if (!fifo->data) {
60
60
fifo->mask = 0;
61
61
return -ENOMEM;
62
62
}
63
63
fifo->mask = size - 1;
64
64
65
65
return 0;
66
66
}
67
67
EXPORT_SYMBOL(__kfifo_alloc);