|
@@ -145,6 +145,8 @@ octeon_droq_destroy_ring_buffers(struct octeon_device *oct,
|
|
|
|
|
|
for (i = 0; i < droq->max_count; i++) {
|
|
for (i = 0; i < droq->max_count; i++) {
|
|
pg_info = &droq->recv_buf_list[i].pg_info;
|
|
pg_info = &droq->recv_buf_list[i].pg_info;
|
|
|
|
+ if (!pg_info)
|
|
|
|
+ continue;
|
|
|
|
|
|
if (pg_info->dma)
|
|
if (pg_info->dma)
|
|
lio_unmap_ring(oct->pci_dev,
|
|
lio_unmap_ring(oct->pci_dev,
|
|
@@ -275,12 +277,12 @@ int octeon_init_droq(struct octeon_device *oct,
|
|
droq->max_count);
|
|
droq->max_count);
|
|
|
|
|
|
droq->recv_buf_list = (struct octeon_recv_buffer *)
|
|
droq->recv_buf_list = (struct octeon_recv_buffer *)
|
|
- vmalloc_node(droq->max_count *
|
|
|
|
|
|
+ vzalloc_node(droq->max_count *
|
|
OCT_DROQ_RECVBUF_SIZE,
|
|
OCT_DROQ_RECVBUF_SIZE,
|
|
numa_node);
|
|
numa_node);
|
|
if (!droq->recv_buf_list)
|
|
if (!droq->recv_buf_list)
|
|
droq->recv_buf_list = (struct octeon_recv_buffer *)
|
|
droq->recv_buf_list = (struct octeon_recv_buffer *)
|
|
- vmalloc(droq->max_count *
|
|
|
|
|
|
+ vzalloc(droq->max_count *
|
|
OCT_DROQ_RECVBUF_SIZE);
|
|
OCT_DROQ_RECVBUF_SIZE);
|
|
if (!droq->recv_buf_list) {
|
|
if (!droq->recv_buf_list) {
|
|
dev_err(&oct->pci_dev->dev, "Output queue recv buf list alloc failed\n");
|
|
dev_err(&oct->pci_dev->dev, "Output queue recv buf list alloc failed\n");
|