Skip to content

Commit 89bf67f

Browse files
Eric Dumazetdavem330
authored andcommitted
drivers/net: use vzalloc()
Use vzalloc() and vzalloc_node() in net drivers Signed-off-by: Eric Dumazet <[email protected]> Acked-by: Jon Mason <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent fe6d2a3 commit 89bf67f

File tree

17 files changed

+39
-87
lines changed

17 files changed

+39
-87
lines changed

drivers/net/bnx2.c

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -766,13 +766,10 @@ bnx2_alloc_rx_mem(struct bnx2 *bp)
766766
int j;
767767

768768
rxr->rx_buf_ring =
769-
vmalloc(SW_RXBD_RING_SIZE * bp->rx_max_ring);
769+
vzalloc(SW_RXBD_RING_SIZE * bp->rx_max_ring);
770770
if (rxr->rx_buf_ring == NULL)
771771
return -ENOMEM;
772772

773-
memset(rxr->rx_buf_ring, 0,
774-
SW_RXBD_RING_SIZE * bp->rx_max_ring);
775-
776773
for (j = 0; j < bp->rx_max_ring; j++) {
777774
rxr->rx_desc_ring[j] =
778775
dma_alloc_coherent(&bp->pdev->dev,
@@ -785,13 +782,11 @@ bnx2_alloc_rx_mem(struct bnx2 *bp)
785782
}
786783

787784
if (bp->rx_pg_ring_size) {
788-
rxr->rx_pg_ring = vmalloc(SW_RXPG_RING_SIZE *
785+
rxr->rx_pg_ring = vzalloc(SW_RXPG_RING_SIZE *
789786
bp->rx_max_pg_ring);
790787
if (rxr->rx_pg_ring == NULL)
791788
return -ENOMEM;
792789

793-
memset(rxr->rx_pg_ring, 0, SW_RXPG_RING_SIZE *
794-
bp->rx_max_pg_ring);
795790
}
796791

797792
for (j = 0; j < bp->rx_max_pg_ring; j++) {

drivers/net/cxgb3/cxgb3_offload.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1164,12 +1164,10 @@ static void cxgb_redirect(struct dst_entry *old, struct dst_entry *new)
11641164
*/
11651165
void *cxgb_alloc_mem(unsigned long size)
11661166
{
1167-
void *p = kmalloc(size, GFP_KERNEL);
1167+
void *p = kzalloc(size, GFP_KERNEL);
11681168

11691169
if (!p)
1170-
p = vmalloc(size);
1171-
if (p)
1172-
memset(p, 0, size);
1170+
p = vzalloc(size);
11731171
return p;
11741172
}
11751173

drivers/net/cxgb4/cxgb4_main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -868,12 +868,10 @@ out: release_firmware(fw);
868868
*/
869869
void *t4_alloc_mem(size_t size)
870870
{
871-
void *p = kmalloc(size, GFP_KERNEL);
871+
void *p = kzalloc(size, GFP_KERNEL);
872872

873873
if (!p)
874-
p = vmalloc(size);
875-
if (p)
876-
memset(p, 0, size);
874+
p = vzalloc(size);
877875
return p;
878876
}
879877

drivers/net/e1000/e1000_main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1425,13 +1425,12 @@ static int e1000_setup_tx_resources(struct e1000_adapter *adapter,
14251425
int size;
14261426

14271427
size = sizeof(struct e1000_buffer) * txdr->count;
1428-
txdr->buffer_info = vmalloc(size);
1428+
txdr->buffer_info = vzalloc(size);
14291429
if (!txdr->buffer_info) {
14301430
e_err(probe, "Unable to allocate memory for the Tx descriptor "
14311431
"ring\n");
14321432
return -ENOMEM;
14331433
}
1434-
memset(txdr->buffer_info, 0, size);
14351434

14361435
/* round up to nearest 4K */
14371436

@@ -1621,13 +1620,12 @@ static int e1000_setup_rx_resources(struct e1000_adapter *adapter,
16211620
int size, desc_len;
16221621

16231622
size = sizeof(struct e1000_buffer) * rxdr->count;
1624-
rxdr->buffer_info = vmalloc(size);
1623+
rxdr->buffer_info = vzalloc(size);
16251624
if (!rxdr->buffer_info) {
16261625
e_err(probe, "Unable to allocate memory for the Rx descriptor "
16271626
"ring\n");
16281627
return -ENOMEM;
16291628
}
1630-
memset(rxdr->buffer_info, 0, size);
16311629

16321630
desc_len = sizeof(struct e1000_rx_desc);
16331631

drivers/net/e1000e/netdev.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2059,10 +2059,9 @@ int e1000e_setup_tx_resources(struct e1000_adapter *adapter)
20592059
int err = -ENOMEM, size;
20602060

20612061
size = sizeof(struct e1000_buffer) * tx_ring->count;
2062-
tx_ring->buffer_info = vmalloc(size);
2062+
tx_ring->buffer_info = vzalloc(size);
20632063
if (!tx_ring->buffer_info)
20642064
goto err;
2065-
memset(tx_ring->buffer_info, 0, size);
20662065

20672066
/* round up to nearest 4K */
20682067
tx_ring->size = tx_ring->count * sizeof(struct e1000_tx_desc);
@@ -2095,10 +2094,9 @@ int e1000e_setup_rx_resources(struct e1000_adapter *adapter)
20952094
int i, size, desc_len, err = -ENOMEM;
20962095

20972096
size = sizeof(struct e1000_buffer) * rx_ring->count;
2098-
rx_ring->buffer_info = vmalloc(size);
2097+
rx_ring->buffer_info = vzalloc(size);
20992098
if (!rx_ring->buffer_info)
21002099
goto err;
2101-
memset(rx_ring->buffer_info, 0, size);
21022100

21032101
for (i = 0; i < rx_ring->count; i++) {
21042102
buffer_info = &rx_ring->buffer_info[i];

drivers/net/ehea/ehea_main.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1496,12 +1496,10 @@ static int ehea_init_q_skba(struct ehea_q_skb_arr *q_skba, int max_q_entries)
14961496
{
14971497
int arr_size = sizeof(void *) * max_q_entries;
14981498

1499-
q_skba->arr = vmalloc(arr_size);
1499+
q_skba->arr = vzalloc(arr_size);
15001500
if (!q_skba->arr)
15011501
return -ENOMEM;
15021502

1503-
memset(q_skba->arr, 0, arr_size);
1504-
15051503
q_skba->len = max_q_entries;
15061504
q_skba->index = 0;
15071505
q_skba->os_skbs = 0;

drivers/net/igb/igb_main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2436,10 +2436,9 @@ int igb_setup_tx_resources(struct igb_ring *tx_ring)
24362436
int size;
24372437

24382438
size = sizeof(struct igb_buffer) * tx_ring->count;
2439-
tx_ring->buffer_info = vmalloc(size);
2439+
tx_ring->buffer_info = vzalloc(size);
24402440
if (!tx_ring->buffer_info)
24412441
goto err;
2442-
memset(tx_ring->buffer_info, 0, size);
24432442

24442443
/* round up to nearest 4K */
24452444
tx_ring->size = tx_ring->count * sizeof(union e1000_adv_tx_desc);
@@ -2587,10 +2586,9 @@ int igb_setup_rx_resources(struct igb_ring *rx_ring)
25872586
int size, desc_len;
25882587

25892588
size = sizeof(struct igb_buffer) * rx_ring->count;
2590-
rx_ring->buffer_info = vmalloc(size);
2589+
rx_ring->buffer_info = vzalloc(size);
25912590
if (!rx_ring->buffer_info)
25922591
goto err;
2593-
memset(rx_ring->buffer_info, 0, size);
25942592

25952593
desc_len = sizeof(union e1000_adv_rx_desc);
25962594

drivers/net/igbvf/netdev.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -430,10 +430,9 @@ int igbvf_setup_tx_resources(struct igbvf_adapter *adapter,
430430
int size;
431431

432432
size = sizeof(struct igbvf_buffer) * tx_ring->count;
433-
tx_ring->buffer_info = vmalloc(size);
433+
tx_ring->buffer_info = vzalloc(size);
434434
if (!tx_ring->buffer_info)
435435
goto err;
436-
memset(tx_ring->buffer_info, 0, size);
437436

438437
/* round up to nearest 4K */
439438
tx_ring->size = tx_ring->count * sizeof(union e1000_adv_tx_desc);
@@ -470,10 +469,9 @@ int igbvf_setup_rx_resources(struct igbvf_adapter *adapter,
470469
int size, desc_len;
471470

472471
size = sizeof(struct igbvf_buffer) * rx_ring->count;
473-
rx_ring->buffer_info = vmalloc(size);
472+
rx_ring->buffer_info = vzalloc(size);
474473
if (!rx_ring->buffer_info)
475474
goto err;
476-
memset(rx_ring->buffer_info, 0, size);
477475

478476
desc_len = sizeof(union e1000_adv_rx_desc);
479477

drivers/net/ixgb/ixgb_main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -669,13 +669,12 @@ ixgb_setup_tx_resources(struct ixgb_adapter *adapter)
669669
int size;
670670

671671
size = sizeof(struct ixgb_buffer) * txdr->count;
672-
txdr->buffer_info = vmalloc(size);
672+
txdr->buffer_info = vzalloc(size);
673673
if (!txdr->buffer_info) {
674674
netif_err(adapter, probe, adapter->netdev,
675675
"Unable to allocate transmit descriptor ring memory\n");
676676
return -ENOMEM;
677677
}
678-
memset(txdr->buffer_info, 0, size);
679678

680679
/* round up to nearest 4K */
681680

@@ -759,13 +758,12 @@ ixgb_setup_rx_resources(struct ixgb_adapter *adapter)
759758
int size;
760759

761760
size = sizeof(struct ixgb_buffer) * rxdr->count;
762-
rxdr->buffer_info = vmalloc(size);
761+
rxdr->buffer_info = vzalloc(size);
763762
if (!rxdr->buffer_info) {
764763
netif_err(adapter, probe, adapter->netdev,
765764
"Unable to allocate receive descriptor ring\n");
766765
return -ENOMEM;
767766
}
768-
memset(rxdr->buffer_info, 0, size);
769767

770768
/* Round up to nearest 4K */
771769

drivers/net/ixgbe/ixgbe_main.c

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5181,12 +5181,11 @@ int ixgbe_setup_tx_resources(struct ixgbe_ring *tx_ring)
51815181
int size;
51825182

51835183
size = sizeof(struct ixgbe_tx_buffer) * tx_ring->count;
5184-
tx_ring->tx_buffer_info = vmalloc_node(size, tx_ring->numa_node);
5184+
tx_ring->tx_buffer_info = vzalloc_node(size, tx_ring->numa_node);
51855185
if (!tx_ring->tx_buffer_info)
5186-
tx_ring->tx_buffer_info = vmalloc(size);
5186+
tx_ring->tx_buffer_info = vzalloc(size);
51875187
if (!tx_ring->tx_buffer_info)
51885188
goto err;
5189-
memset(tx_ring->tx_buffer_info, 0, size);
51905189

51915190
/* round up to nearest 4K */
51925191
tx_ring->size = tx_ring->count * sizeof(union ixgbe_adv_tx_desc);
@@ -5246,12 +5245,11 @@ int ixgbe_setup_rx_resources(struct ixgbe_ring *rx_ring)
52465245
int size;
52475246

52485247
size = sizeof(struct ixgbe_rx_buffer) * rx_ring->count;
5249-
rx_ring->rx_buffer_info = vmalloc_node(size, rx_ring->numa_node);
5248+
rx_ring->rx_buffer_info = vzalloc_node(size, rx_ring->numa_node);
52505249
if (!rx_ring->rx_buffer_info)
5251-
rx_ring->rx_buffer_info = vmalloc(size);
5250+
rx_ring->rx_buffer_info = vzalloc(size);
52525251
if (!rx_ring->rx_buffer_info)
52535252
goto err;
5254-
memset(rx_ring->rx_buffer_info, 0, size);
52555253

52565254
/* Round up to nearest 4K */
52575255
rx_ring->size = rx_ring->count * sizeof(union ixgbe_adv_rx_desc);

drivers/net/ixgbevf/ixgbevf_main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2489,10 +2489,9 @@ int ixgbevf_setup_tx_resources(struct ixgbevf_adapter *adapter,
24892489
int size;
24902490

24912491
size = sizeof(struct ixgbevf_tx_buffer) * tx_ring->count;
2492-
tx_ring->tx_buffer_info = vmalloc(size);
2492+
tx_ring->tx_buffer_info = vzalloc(size);
24932493
if (!tx_ring->tx_buffer_info)
24942494
goto err;
2495-
memset(tx_ring->tx_buffer_info, 0, size);
24962495

24972496
/* round up to nearest 4K */
24982497
tx_ring->size = tx_ring->count * sizeof(union ixgbe_adv_tx_desc);
@@ -2556,14 +2555,13 @@ int ixgbevf_setup_rx_resources(struct ixgbevf_adapter *adapter,
25562555
int size;
25572556

25582557
size = sizeof(struct ixgbevf_rx_buffer) * rx_ring->count;
2559-
rx_ring->rx_buffer_info = vmalloc(size);
2558+
rx_ring->rx_buffer_info = vzalloc(size);
25602559
if (!rx_ring->rx_buffer_info) {
25612560
hw_dbg(&adapter->hw,
25622561
"Unable to vmalloc buffer memory for "
25632562
"the receive descriptor ring\n");
25642563
goto alloc_failed;
25652564
}
2566-
memset(rx_ring->rx_buffer_info, 0, size);
25672565

25682566
/* Round up to nearest 4K */
25692567
rx_ring->size = rx_ring->count * sizeof(union ixgbe_adv_rx_desc);

drivers/net/netxen/netxen_nic_init.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -214,13 +214,12 @@ int netxen_alloc_sw_resources(struct netxen_adapter *adapter)
214214
tx_ring->num_desc = adapter->num_txd;
215215
tx_ring->txq = netdev_get_tx_queue(netdev, 0);
216216

217-
cmd_buf_arr = vmalloc(TX_BUFF_RINGSIZE(tx_ring));
217+
cmd_buf_arr = vzalloc(TX_BUFF_RINGSIZE(tx_ring));
218218
if (cmd_buf_arr == NULL) {
219219
dev_err(&pdev->dev, "%s: failed to allocate cmd buffer ring\n",
220220
netdev->name);
221221
goto err_out;
222222
}
223-
memset(cmd_buf_arr, 0, TX_BUFF_RINGSIZE(tx_ring));
224223
tx_ring->cmd_buf_arr = cmd_buf_arr;
225224

226225
recv_ctx = &adapter->recv_ctx;
@@ -280,15 +279,14 @@ int netxen_alloc_sw_resources(struct netxen_adapter *adapter)
280279

281280
}
282281
rds_ring->rx_buf_arr = (struct netxen_rx_buffer *)
283-
vmalloc(RCV_BUFF_RINGSIZE(rds_ring));
282+
vzalloc(RCV_BUFF_RINGSIZE(rds_ring));
284283
if (rds_ring->rx_buf_arr == NULL) {
285284
printk(KERN_ERR "%s: Failed to allocate "
286285
"rx buffer ring %d\n",
287286
netdev->name, ring);
288287
/* free whatever was already allocated */
289288
goto err_out;
290289
}
291-
memset(rds_ring->rx_buf_arr, 0, RCV_BUFF_RINGSIZE(rds_ring));
292290
INIT_LIST_HEAD(&rds_ring->free_list);
293291
/*
294292
* Now go through all of them, set reference handles

drivers/net/pch_gbe/pch_gbe_main.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1523,12 +1523,11 @@ int pch_gbe_setup_tx_resources(struct pch_gbe_adapter *adapter,
15231523
int desNo;
15241524

15251525
size = (int)sizeof(struct pch_gbe_buffer) * tx_ring->count;
1526-
tx_ring->buffer_info = vmalloc(size);
1526+
tx_ring->buffer_info = vzalloc(size);
15271527
if (!tx_ring->buffer_info) {
15281528
pr_err("Unable to allocate memory for the buffer infomation\n");
15291529
return -ENOMEM;
15301530
}
1531-
memset(tx_ring->buffer_info, 0, size);
15321531

15331532
tx_ring->size = tx_ring->count * (int)sizeof(struct pch_gbe_tx_desc);
15341533

@@ -1573,12 +1572,11 @@ int pch_gbe_setup_rx_resources(struct pch_gbe_adapter *adapter,
15731572
int desNo;
15741573

15751574
size = (int)sizeof(struct pch_gbe_buffer) * rx_ring->count;
1576-
rx_ring->buffer_info = vmalloc(size);
1575+
rx_ring->buffer_info = vzalloc(size);
15771576
if (!rx_ring->buffer_info) {
15781577
pr_err("Unable to allocate memory for the receive descriptor ring\n");
15791578
return -ENOMEM;
15801579
}
1581-
memset(rx_ring->buffer_info, 0, size);
15821580
rx_ring->size = rx_ring->count * (int)sizeof(struct pch_gbe_rx_desc);
15831581
rx_ring->desc = dma_alloc_coherent(&pdev->dev, rx_ring->size,
15841582
&rx_ring->dma, GFP_KERNEL);

drivers/net/pptp.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -673,8 +673,7 @@ static int __init pptp_init_module(void)
673673
int err = 0;
674674
pr_info("PPTP driver version " PPTP_DRIVER_VERSION "\n");
675675

676-
callid_sock = __vmalloc((MAX_CALLID + 1) * sizeof(void *),
677-
GFP_KERNEL | __GFP_ZERO, PAGE_KERNEL);
676+
callid_sock = vzalloc((MAX_CALLID + 1) * sizeof(void *));
678677
if (!callid_sock) {
679678
pr_err("PPTP: cann't allocate memory\n");
680679
return -ENOMEM;

drivers/net/qlcnic/qlcnic_init.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -236,12 +236,11 @@ int qlcnic_alloc_sw_resources(struct qlcnic_adapter *adapter)
236236
tx_ring->num_desc = adapter->num_txd;
237237
tx_ring->txq = netdev_get_tx_queue(netdev, 0);
238238

239-
cmd_buf_arr = vmalloc(TX_BUFF_RINGSIZE(tx_ring));
239+
cmd_buf_arr = vzalloc(TX_BUFF_RINGSIZE(tx_ring));
240240
if (cmd_buf_arr == NULL) {
241241
dev_err(&netdev->dev, "failed to allocate cmd buffer ring\n");
242242
goto err_out;
243243
}
244-
memset(cmd_buf_arr, 0, TX_BUFF_RINGSIZE(tx_ring));
245244
tx_ring->cmd_buf_arr = cmd_buf_arr;
246245

247246
recv_ctx = &adapter->recv_ctx;
@@ -276,13 +275,12 @@ int qlcnic_alloc_sw_resources(struct qlcnic_adapter *adapter)
276275
break;
277276
}
278277
rds_ring->rx_buf_arr = (struct qlcnic_rx_buffer *)
279-
vmalloc(RCV_BUFF_RINGSIZE(rds_ring));
278+
vzalloc(RCV_BUFF_RINGSIZE(rds_ring));
280279
if (rds_ring->rx_buf_arr == NULL) {
281280
dev_err(&netdev->dev, "Failed to allocate "
282281
"rx buffer ring %d\n", ring);
283282
goto err_out;
284283
}
285-
memset(rds_ring->rx_buf_arr, 0, RCV_BUFF_RINGSIZE(rds_ring));
286284
INIT_LIST_HEAD(&rds_ring->free_list);
287285
/*
288286
* Now go through all of them, set reference handles

drivers/net/sfc/filter.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -428,10 +428,9 @@ int efx_probe_filters(struct efx_nic *efx)
428428
GFP_KERNEL);
429429
if (!table->used_bitmap)
430430
goto fail;
431-
table->spec = vmalloc(table->size * sizeof(*table->spec));
431+
table->spec = vzalloc(table->size * sizeof(*table->spec));
432432
if (!table->spec)
433433
goto fail;
434-
memset(table->spec, 0, table->size * sizeof(*table->spec));
435434
}
436435

437436
return 0;

0 commit comments

Comments
 (0)