Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/mlx5/mlx5_en/mlx5_en_rx.c
Show First 20 Lines • Show All 456 Lines • ▼ Show 20 Lines | for (i = 0; i < budget; i++) { | ||||
bus_dmamap_sync(rq->dma_tag, | bus_dmamap_sync(rq->dma_tag, | ||||
rq->mbuf[wqe_counter].dma_map, | rq->mbuf[wqe_counter].dma_map, | ||||
BUS_DMASYNC_POSTREAD); | BUS_DMASYNC_POSTREAD); | ||||
if (unlikely((cqe->op_own >> 4) != MLX5_CQE_RESP_SEND)) { | if (unlikely((cqe->op_own >> 4) != MLX5_CQE_RESP_SEND)) { | ||||
rq->stats.wqe_err++; | rq->stats.wqe_err++; | ||||
goto wq_ll_pop; | goto wq_ll_pop; | ||||
} | } | ||||
if (PFIL_HOOKED_IN(rq->channel->priv->pfil)) { | |||||
int rv; | |||||
rv = pfil_run_hooks(rq->channel->priv->pfil, | |||||
rq->mbuf[wqe_counter].data, rq->ifp, | |||||
byte_cnt | PFIL_MEMPTR | PFIL_IN, NULL); | |||||
KASSERT(rv != PFIL_REALLOCED, | |||||
("Filter did something we don't support yet")); | |||||
if (rv != PFIL_PASS) { | |||||
rq->stats.packets++; | |||||
goto wq_ll_pop; | |||||
} | |||||
} | |||||
if ((MHLEN - MLX5E_NET_IP_ALIGN) >= byte_cnt && | if ((MHLEN - MLX5E_NET_IP_ALIGN) >= byte_cnt && | ||||
(mb = m_gethdr(M_NOWAIT, MT_DATA)) != NULL) { | (mb = m_gethdr(M_NOWAIT, MT_DATA)) != NULL) { | ||||
#if (MLX5E_MAX_RX_SEGS != 1) | #if (MLX5E_MAX_RX_SEGS != 1) | ||||
/* set maximum mbuf length */ | /* set maximum mbuf length */ | ||||
mb->m_len = MHLEN - MLX5E_NET_IP_ALIGN; | mb->m_len = MHLEN - MLX5E_NET_IP_ALIGN; | ||||
#endif | #endif | ||||
/* get IP header aligned */ | /* get IP header aligned */ | ||||
mb->m_data += MLX5E_NET_IP_ALIGN; | mb->m_data += MLX5E_NET_IP_ALIGN; | ||||
▲ Show 20 Lines • Show All 79 Lines • Show Last 20 Lines |