Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/95627 _apply patch failure_ Submitter: Lance Richardson Date: Friday, July 09 2021 16:38:48 Applied on: CommitID:175af25734f295874e31b33ccd0879e69fd152a9 Apply patch set 95627 failed: Checking patch drivers/net/bnxt/bnxt_cpr.h... error: while searching for: #include #include struct bnxt_db_info; #define CMP_VALID(cmp, raw_cons, ring) \ (!!(rte_le_to_cpu_32(((struct cmpl_base *)(cmp))->info3_v) & \ CMPL_BASE_V) == !((raw_cons) & ((ring)->ring_size))) #define CMP_TYPE(cmp) \ (((struct cmpl_base *)cmp)->type & CMPL_BASE_TYPE_MASK) error: patch failed: drivers/net/bnxt/bnxt_cpr.h:8 Hunk #2 succeeded at 138 (offset 20 lines). Checking patch drivers/net/bnxt/bnxt_ethdev.c... Hunk #1 succeeded at 3038 (offset -88 lines). Hunk #2 succeeded at 3050 (offset -88 lines). Hunk #3 succeeded at 3158 (offset 12 lines). Hunk #4 succeeded at 3102 (offset -88 lines). Hunk #5 succeeded at 3116 (offset -88 lines). Hunk #6 succeeded at 3133 (offset -88 lines). Hunk #7 succeeded at 3058 (offset -189 lines). error: while searching for: struct bnxt_tx_queue *txq = (struct bnxt_tx_queue *)tx_queue; struct bnxt_cp_ring_info *cpr = txq->cp_ring; uint32_t ring_mask, raw_cons, nb_tx_pkts = 0; struct bnxt_ring *cp_ring_struct; struct cmpl_base *cp_desc_ring; int rc; error: patch failed: drivers/net/bnxt/bnxt_ethdev.c:3299 error: while searching for: raw_cons = cpr->cp_raw_cons; cp_desc_ring = cpr->cp_desc_ring; cp_ring_struct = cpr->cp_ring_struct; ring_mask = cpr->cp_ring_struct->ring_mask; /* Check to see if hw has posted a completion for the descriptor. */ error: patch failed: drivers/net/bnxt/bnxt_ethdev.c:3316 error: while searching for: cons = RING_CMPL(ring_mask, raw_cons); txcmp = (struct tx_cmpl *)&cp_desc_ring[cons]; if (!CMP_VALID(txcmp, raw_cons, cp_ring_struct)) break; if (CMP_TYPE(txcmp) == TX_CMPL_TYPE_TX_L2) error: patch failed: drivers/net/bnxt/bnxt_ethdev.c:3327 Checking patch drivers/net/bnxt/bnxt_irq.c... error: while searching for: { struct rte_eth_dev *eth_dev = (struct rte_eth_dev *)param; struct bnxt *bp = eth_dev->data->dev_private; struct bnxt_cp_ring_info *cpr; struct cmpl_base *cmp; uint32_t raw_cons; uint32_t cons; if (bp == NULL) return; error: patch failed: drivers/net/bnxt/bnxt_irq.c:21 Hunk #2 succeeded at 30 (offset -3 lines). Hunk #3 succeeded at 46 (offset -3 lines). Checking patch drivers/net/bnxt/bnxt_rxr.c... error: while searching for: raw_cp_cons = ADV_RAW_CMP(raw_cp_cons, agg_bufs); last_cp_cons = RING_CMP(cpr->cp_ring_struct, raw_cp_cons); agg_cmpl = (struct rx_pkt_cmpl *)&cpr->cp_desc_ring[last_cp_cons]; return CMP_VALID(agg_cmpl, raw_cp_cons, cpr->cp_ring_struct); } /* TPA consume agg buffer out of order, allocate connected data only */ error: patch failed: drivers/net/bnxt/bnxt_rxr.c:297 error: while searching for: cp_cons = RING_CMP(cpr->cp_ring_struct, tmp_raw_cons); rxcmp1 = (struct rx_pkt_cmpl_hi *)&cpr->cp_desc_ring[cp_cons]; if (!CMP_VALID(rxcmp1, tmp_raw_cons, cpr->cp_ring_struct)) return -EBUSY; if (cmp_type == RX_TPA_START_CMPL_TYPE_RX_TPA_START || error: patch failed: drivers/net/bnxt/bnxt_rxr.c:892 error: while searching for: cons = RING_CMP(cpr->cp_ring_struct, raw_cons); rxcmp = (struct rx_pkt_cmpl *)&cpr->cp_desc_ring[cons]; if (!CMP_VALID(rxcmp, raw_cons, cpr->cp_ring_struct)) break; if (CMP_TYPE(rxcmp) == CMPL_BASE_TYPE_HWRM_DONE) { PMD_DRV_LOG(ERR, "Rx flush done\n"); error: patch failed: drivers/net/bnxt/bnxt_rxr.c:1077 Checking patch drivers/net/bnxt/bnxt_rxtx_vec_avx2.c... error: drivers/net/bnxt/bnxt_rxtx_vec_avx2.c: does not exist in index Checking patch drivers/net/bnxt/bnxt_rxtx_vec_neon.c... Hunk #1 succeeded at 314 (offset -25 lines). Checking patch drivers/net/bnxt/bnxt_rxtx_vec_sse.c... Hunk #1 succeeded at 296 (offset -24 lines). Checking patch drivers/net/bnxt/bnxt_txr.c... error: while searching for: cons = RING_CMPL(ring_mask, raw_cons); txcmp = (struct tx_cmpl *)&cpr->cp_desc_ring[cons]; if (!CMP_VALID(txcmp, raw_cons, cp_ring_struct)) break; opaque = rte_le_to_cpu_32(txcmp->opaque); error: patch failed: drivers/net/bnxt/bnxt_txr.c:461 Applying patch drivers/net/bnxt/bnxt_cpr.h with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. Applying patch drivers/net/bnxt/bnxt_ethdev.c with 3 rejects... Hunk #1 applied cleanly. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Hunk #6 applied cleanly. Hunk #7 applied cleanly. Rejected hunk #8. Rejected hunk #9. Rejected hunk #10. Applying patch drivers/net/bnxt/bnxt_irq.c with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Applying patch drivers/net/bnxt/bnxt_rxr.c with 3 rejects... Rejected hunk #1. Rejected hunk #2. Rejected hunk #3. Applied patch drivers/net/bnxt/bnxt_rxtx_vec_neon.c cleanly. Applied patch drivers/net/bnxt/bnxt_rxtx_vec_sse.c cleanly. Applying patch drivers/net/bnxt/bnxt_txr.c with 1 reject... Rejected hunk #1. diff a/drivers/net/bnxt/bnxt_cpr.h b/drivers/net/bnxt/bnxt_cpr.h (rejected hunks) @@ -8,13 +8,10 @@ #include #include +#include "hsi_struct_def_dpdk.h" struct bnxt_db_info; -#define CMP_VALID(cmp, raw_cons, ring) \ - (!!(rte_le_to_cpu_32(((struct cmpl_base *)(cmp))->info3_v) & \ - CMPL_BASE_V) == !((raw_cons) & ((ring)->ring_size))) - #define CMP_TYPE(cmp) \ (((struct cmpl_base *)cmp)->type & CMPL_BASE_TYPE_MASK) diff a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c (rejected hunks) @@ -3299,7 +3301,6 @@ bnxt_tx_descriptor_status_op(void *tx_queue, uint16_t offset) struct bnxt_tx_queue *txq = (struct bnxt_tx_queue *)tx_queue; struct bnxt_cp_ring_info *cpr = txq->cp_ring; uint32_t ring_mask, raw_cons, nb_tx_pkts = 0; - struct bnxt_ring *cp_ring_struct; struct cmpl_base *cp_desc_ring; int rc; @@ -3316,7 +3317,6 @@ bnxt_tx_descriptor_status_op(void *tx_queue, uint16_t offset) raw_cons = cpr->cp_raw_cons; cp_desc_ring = cpr->cp_desc_ring; - cp_ring_struct = cpr->cp_ring_struct; ring_mask = cpr->cp_ring_struct->ring_mask; /* Check to see if hw has posted a completion for the descriptor. */ @@ -3327,7 +3327,7 @@ bnxt_tx_descriptor_status_op(void *tx_queue, uint16_t offset) cons = RING_CMPL(ring_mask, raw_cons); txcmp = (struct tx_cmpl *)&cp_desc_ring[cons]; - if (!CMP_VALID(txcmp, raw_cons, cp_ring_struct)) + if (!bnxt_cpr_cmp_valid(txcmp, raw_cons, ring_mask + 1)) break; if (CMP_TYPE(txcmp) == TX_CMPL_TYPE_TX_L2) diff a/drivers/net/bnxt/bnxt_irq.c b/drivers/net/bnxt/bnxt_irq.c (rejected hunks) @@ -21,10 +21,10 @@ void bnxt_int_handler(void *param) { struct rte_eth_dev *eth_dev = (struct rte_eth_dev *)param; struct bnxt *bp = eth_dev->data->dev_private; + uint32_t cons, raw_cons, cp_ring_size; struct bnxt_cp_ring_info *cpr; struct cmpl_base *cmp; - uint32_t raw_cons; - uint32_t cons; + if (bp == NULL) return; diff a/drivers/net/bnxt/bnxt_rxr.c b/drivers/net/bnxt/bnxt_rxr.c (rejected hunks) @@ -297,7 +297,8 @@ static int bnxt_agg_bufs_valid(struct bnxt_cp_ring_info *cpr, raw_cp_cons = ADV_RAW_CMP(raw_cp_cons, agg_bufs); last_cp_cons = RING_CMP(cpr->cp_ring_struct, raw_cp_cons); agg_cmpl = (struct rx_pkt_cmpl *)&cpr->cp_desc_ring[last_cp_cons]; - return CMP_VALID(agg_cmpl, raw_cp_cons, cpr->cp_ring_struct); + return bnxt_cpr_cmp_valid(agg_cmpl, raw_cp_cons, + cpr->cp_ring_struct->ring_size); } /* TPA consume agg buffer out of order, allocate connected data only */ @@ -892,7 +893,8 @@ static int bnxt_rx_pkt(struct rte_mbuf **rx_pkt, cp_cons = RING_CMP(cpr->cp_ring_struct, tmp_raw_cons); rxcmp1 = (struct rx_pkt_cmpl_hi *)&cpr->cp_desc_ring[cp_cons]; - if (!CMP_VALID(rxcmp1, tmp_raw_cons, cpr->cp_ring_struct)) + if (!bnxt_cpr_cmp_valid(rxcmp1, tmp_raw_cons, + cpr->cp_ring_struct->ring_size)) return -EBUSY; if (cmp_type == RX_TPA_START_CMPL_TYPE_RX_TPA_START || @@ -1077,7 +1079,8 @@ uint16_t bnxt_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, cons = RING_CMP(cpr->cp_ring_struct, raw_cons); rxcmp = (struct rx_pkt_cmpl *)&cpr->cp_desc_ring[cons]; - if (!CMP_VALID(rxcmp, raw_cons, cpr->cp_ring_struct)) + if (!bnxt_cpr_cmp_valid(rxcmp, raw_cons, + cpr->cp_ring_struct->ring_size)) break; if (CMP_TYPE(rxcmp) == CMPL_BASE_TYPE_HWRM_DONE) { PMD_DRV_LOG(ERR, "Rx flush done\n"); diff a/drivers/net/bnxt/bnxt_txr.c b/drivers/net/bnxt/bnxt_txr.c (rejected hunks) @@ -461,7 +461,7 @@ static int bnxt_handle_tx_cp(struct bnxt_tx_queue *txq) cons = RING_CMPL(ring_mask, raw_cons); txcmp = (struct tx_cmpl *)&cpr->cp_desc_ring[cons]; - if (!CMP_VALID(txcmp, raw_cons, cp_ring_struct)) + if (!bnxt_cpr_cmp_valid(txcmp, raw_cons, ring_mask + 1)) break; opaque = rte_le_to_cpu_32(txcmp->opaque); https://lab.dpdk.org/results/dashboard/patchsets/17755/ UNH-IOL DPDK Community Lab