diff mbox

sfc: Use kcalloc instead of kzalloc to allocate array

Message ID 1322865373.1534.357.camel@localhost.localdomain
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Thomas Meyer Dec. 2, 2011, 10:36 p.m. UTC
The advantage of kcalloc is, that will prevent integer overflows which could
result from the multiplication of number of elements and size and it is also
a bit nicer to read.

The semantic patch that makes this change is available
in https://lkml.org/lkml/2011/11/25/107

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
---



--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff -u -p a/drivers/net/ethernet/sfc/rx.c b/drivers/net/ethernet/sfc/rx.c
--- a/drivers/net/ethernet/sfc/rx.c 2011-11-13 11:07:36.306977044 +0100
+++ b/drivers/net/ethernet/sfc/rx.c 2011-11-28 19:53:10.346917167 +0100
@@ -669,7 +669,7 @@  int efx_probe_rx_queue(struct efx_rx_que
 		  rx_queue->ptr_mask);
 
 	/* Allocate RX buffers */
-	rx_queue->buffer = kzalloc(entries * sizeof(*rx_queue->buffer),
+	rx_queue->buffer = kcalloc(entries, sizeof(*rx_queue->buffer),
 				   GFP_KERNEL);
 	if (!rx_queue->buffer)
 		return -ENOMEM;
diff -u -p a/drivers/net/ethernet/sfc/selftest.c b/drivers/net/ethernet/sfc/selftest.c
--- a/drivers/net/ethernet/sfc/selftest.c 2011-11-13 11:07:36.306977044 +0100
+++ b/drivers/net/ethernet/sfc/selftest.c 2011-11-28 19:53:09.640237232 +0100
@@ -503,8 +503,8 @@  efx_test_loopback(struct efx_tx_queue *t
 		/* Determine how many packets to send */
 		state->packet_count = efx->txq_entries / 3;
 		state->packet_count = min(1 << (i << 2), state->packet_count);
-		state->skbs = kzalloc(sizeof(state->skbs[0]) *
-				      state->packet_count, GFP_KERNEL);
+		state->skbs = kcalloc(state->packet_count,
+				      sizeof(state->skbs[0]), GFP_KERNEL);
 		if (!state->skbs)
 			return -ENOMEM;
 		state->flush = false;
diff -u -p a/drivers/net/ethernet/sfc/tx.c b/drivers/net/ethernet/sfc/tx.c
--- a/drivers/net/ethernet/sfc/tx.c 2011-11-13 11:07:36.313643816 +0100
+++ b/drivers/net/ethernet/sfc/tx.c 2011-11-28 19:53:08.056874176 +0100
@@ -468,7 +468,7 @@  int efx_probe_tx_queue(struct efx_tx_que
 		  tx_queue->queue, efx->txq_entries, tx_queue->ptr_mask);
 
 	/* Allocate software ring */
-	tx_queue->buffer = kzalloc(entries * sizeof(*tx_queue->buffer),
+	tx_queue->buffer = kcalloc(entries, sizeof(*tx_queue->buffer),
 				   GFP_KERNEL);
 	if (!tx_queue->buffer)
 		return -ENOMEM;