Commit 92c54a65 authored by Christophe JAILLET's avatar Christophe JAILLET Committed by David S. Miller
Browse files

atm: nicstar: Use kcalloc() to simplify code



Use kcalloc() instead of kmalloc_array() and a loop to set all the values
of the array to NULL.

While at it, remove a duplicated assignment to 'scq->num_entries'.

Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 32d51cef
Loading
Loading
Loading
Loading
+2 −8
Original line number Diff line number Diff line
@@ -861,7 +861,6 @@ static void ns_init_card_error(ns_dev *card, int error)
static scq_info *get_scq(ns_dev *card, int size, u32 scd)
{
	scq_info *scq;
	int i;

	if (size != VBR_SCQSIZE && size != CBR_SCQSIZE)
		return NULL;
@@ -875,8 +874,7 @@ static scq_info *get_scq(ns_dev *card, int size, u32 scd)
		kfree(scq);
		return NULL;
	}
	scq->skb = kmalloc_array(size / NS_SCQE_SIZE,
				 sizeof(*scq->skb),
	scq->skb = kcalloc(size / NS_SCQE_SIZE, sizeof(*scq->skb),
			   GFP_KERNEL);
	if (!scq->skb) {
		dma_free_coherent(&card->pcidev->dev,
@@ -890,15 +888,11 @@ static scq_info *get_scq(ns_dev *card, int size, u32 scd)
	scq->last = scq->base + (scq->num_entries - 1);
	scq->tail = scq->last;
	scq->scd = scd;
	scq->num_entries = size / NS_SCQE_SIZE;
	scq->tbd_count = 0;
	init_waitqueue_head(&scq->scqfull_waitq);
	scq->full = 0;
	spin_lock_init(&scq->lock);

	for (i = 0; i < scq->num_entries; i++)
		scq->skb[i] = NULL;

	return scq;
}