X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fhinic%2Fbase%2Fhinic_pmd_wq.c;fp=drivers%2Fnet%2Fhinic%2Fbase%2Fhinic_pmd_wq.c;h=345248c3eaf048742fa1e9fa3273879a0deb6d3a;hb=1b7b9f170fcebbbd0708fab554dcb5a7badef8cf;hp=04c81f9bc8fe077cfb36e0a528d77e93f9ee8785;hpb=0962b6055c080699f93ef986327e536d4707853a;p=dpdk.git diff --git a/drivers/net/hinic/base/hinic_pmd_wq.c b/drivers/net/hinic/base/hinic_pmd_wq.c index 04c81f9bc8..345248c3ea 100644 --- a/drivers/net/hinic/base/hinic_pmd_wq.c +++ b/drivers/net/hinic/base/hinic_pmd_wq.c @@ -15,13 +15,14 @@ static void free_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq) wq->queue_buf_vaddr = 0; } -static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq) +static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq, + unsigned int socket_id) { dma_addr_t dma_addr = 0; wq->queue_buf_vaddr = (u64)(u64 *) dma_zalloc_coherent_aligned256k(hwdev, wq->wq_buf_size, - &dma_addr, GFP_KERNEL); + &dma_addr, socket_id); if (!wq->queue_buf_vaddr) { PMD_DRV_LOG(ERR, "Failed to allocate wq page"); return -ENOMEM; @@ -40,7 +41,7 @@ static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq) } int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq, - u32 wqebb_shift, u16 q_depth) + u32 wqebb_shift, u16 q_depth, unsigned int socket_id) { int err; @@ -60,7 +61,7 @@ int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq, return -EINVAL; } - err = alloc_wq_pages(hwdev, wq); + err = alloc_wq_pages(hwdev, wq, socket_id); if (err) { PMD_DRV_LOG(ERR, "Failed to allocate wq pages"); return err; @@ -114,7 +115,7 @@ int hinic_cmdq_alloc(struct hinic_wq *wq, struct hinic_hwdev *hwdev, wq[i].wq_buf_size = wq_buf_size; wq[i].q_depth = q_depth; - err = alloc_wq_pages(hwdev, &wq[i]); + err = alloc_wq_pages(hwdev, &wq[i], SOCKET_ID_ANY); if (err) { PMD_DRV_LOG(ERR, "Failed to alloc CMDQ blocks"); goto cmdq_block_err;