mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-07-06 05:45:29 +02:00
octeontx2-pf: Add AF_XDP non-zero copy support
[ Upstream commit b4164de5041b51cda3438e75bce668e2556057c3 ]
Set xdp rx ring memory type as MEM_TYPE_PAGE_POOL for
af-xdp to work. This is needed since xdp_return_frame
internally will use page pools.
Fixes: 06059a1a9a
("octeontx2-pf: Add XDP support to netdev PF")
Signed-off-by: Suman Ghosh <sumang@marvell.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
2a2d7bf86d
commit
a005991013
|
@ -988,6 +988,7 @@ static int otx2_cq_init(struct otx2_nic *pfvf, u16 qidx)
|
|||
int err, pool_id, non_xdp_queues;
|
||||
struct nix_aq_enq_req *aq;
|
||||
struct otx2_cq_queue *cq;
|
||||
struct otx2_pool *pool;
|
||||
|
||||
cq = &qset->cq[qidx];
|
||||
cq->cq_idx = qidx;
|
||||
|
@ -996,8 +997,13 @@ static int otx2_cq_init(struct otx2_nic *pfvf, u16 qidx)
|
|||
cq->cq_type = CQ_RX;
|
||||
cq->cint_idx = qidx;
|
||||
cq->cqe_cnt = qset->rqe_cnt;
|
||||
if (pfvf->xdp_prog)
|
||||
if (pfvf->xdp_prog) {
|
||||
pool = &qset->pool[qidx];
|
||||
xdp_rxq_info_reg(&cq->xdp_rxq, pfvf->netdev, qidx, 0);
|
||||
xdp_rxq_info_reg_mem_model(&cq->xdp_rxq,
|
||||
MEM_TYPE_PAGE_POOL,
|
||||
pool->page_pool);
|
||||
}
|
||||
} else if (qidx < non_xdp_queues) {
|
||||
cq->cq_type = CQ_TX;
|
||||
cq->cint_idx = qidx - pfvf->hw.rx_queues;
|
||||
|
|
Loading…
Reference in New Issue
Block a user