Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/99406 _apply patch failure_ Submitter: Simei Su Date: Wednesday, September 22 2021 08:46:33 Applied on: CommitID:ccf69617ce96e1b708c7644289ee8df4586f7556 Apply patch set 99406 failed: Checking patch doc/guides/nics/features/ice.ini... Checking patch doc/guides/rel_notes/release_21_11.rst... error: while searching for: Added 1PPS out support by a devargs. * Added Rx timstamp support by dynamic mbuf on Flex Descriptor. Removed Items ------------- error: patch failed: doc/guides/rel_notes/release_21_11.rst:71 Checking patch drivers/net/ice/ice_ethdev.c... error: while searching for: #define ICE_HW_DEBUG_MASK_ARG "hw_debug_mask" #define ICE_ONE_PPS_OUT_ARG "pps_out" uint64_t ice_timestamp_dynflag; int ice_timestamp_dynfield_offset = -1; error: patch failed: drivers/net/ice/ice_ethdev.c:31 Hunk #3 succeeded at 142 (offset -10 lines). Hunk #4 succeeded at 237 (offset -10 lines). Hunk #5 succeeded at 5307 (offset -203 lines). Checking patch drivers/net/ice/ice_ethdev.h... Hunk #2 succeeded at 487 (offset -15 lines). Checking patch drivers/net/ice/ice_rxtx.c... error: while searching for: regval |= (0x03 << QRXFLXP_CNTXT_RXDID_PRIO_S) & QRXFLXP_CNTXT_RXDID_PRIO_M; if (rxq->offloads & DEV_RX_OFFLOAD_TIMESTAMP) regval |= QRXFLXP_CNTXT_TS_M; ICE_WRITE_REG(hw, QRXFLXP_CNTXT(rxq->reg_idx), regval); error: patch failed: drivers/net/ice/ice_rxtx.c:366 Hunk #3 succeeded at 690 (offset -18 lines). error: while searching for: struct ice_vsi *vsi = rxq->vsi; struct ice_hw *hw = ICE_VSI_TO_HW(vsi); uint64_t time, ts_ns; rxdp = &rxq->rx_ring[rxq->rx_tail]; rxep = &rxq->sw_ring[rxq->rx_tail]; error: patch failed: drivers/net/ice/ice_rxtx.c:1603 error: while searching for: } } mb->ol_flags |= pkt_flags; } error: patch failed: drivers/net/ice/ice_rxtx.c:1660 error: while searching for: struct ice_vsi *vsi = rxq->vsi; struct ice_hw *hw = ICE_VSI_TO_HW(vsi); uint64_t time, ts_ns; while (nb_rx < nb_pkts) { rxdp = &rx_ring[rx_id]; error: patch failed: drivers/net/ice/ice_rxtx.c:1846 error: while searching for: } } first_seg->ol_flags |= pkt_flags; /* Prefetch data of first segment, if configured to do so. */ rte_prefetch0(RTE_PTR_ADD(first_seg->buf_addr, error: patch failed: drivers/net/ice/ice_rxtx.c:1971 error: while searching for: struct ice_vsi *vsi = rxq->vsi; struct ice_hw *hw = ICE_VSI_TO_HW(vsi); uint64_t time, ts_ns; while (nb_rx < nb_pkts) { rxdp = &rx_ring[rx_id]; error: patch failed: drivers/net/ice/ice_rxtx.c:2329 error: while searching for: } } rxm->ol_flags |= pkt_flags; /* copy old mbuf to rx_pkts */ rx_pkts[nb_rx++] = rxm; error: patch failed: drivers/net/ice/ice_rxtx.c:2395 Hunk #10 succeeded at 2501 (offset -138 lines). Hunk #11 succeeded at 2670 (offset -138 lines). Hunk #12 succeeded at 3077 (offset -138 lines). Applied patch doc/guides/nics/features/ice.ini cleanly. Applying patch doc/guides/rel_notes/release_21_11.rst with 1 reject... Rejected hunk #1. Applying patch drivers/net/ice/ice_ethdev.c with 1 reject... Hunk #1 applied cleanly. Rejected hunk #2. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Applied patch drivers/net/ice/ice_ethdev.h cleanly. Applying patch drivers/net/ice/ice_rxtx.c with 7 rejects... Hunk #1 applied cleanly. Rejected hunk #2. Hunk #3 applied cleanly. Rejected hunk #4. Rejected hunk #5. Rejected hunk #6. Rejected hunk #7. Rejected hunk #8. Rejected hunk #9. Hunk #10 applied cleanly. Hunk #11 applied cleanly. Hunk #12 applied cleanly. diff a/doc/guides/rel_notes/release_21_11.rst b/doc/guides/rel_notes/release_21_11.rst (rejected hunks) @@ -71,7 +71,7 @@ New Features Added 1PPS out support by a devargs. * Added Rx timstamp support by dynamic mbuf on Flex Descriptor. - + * Added timesync API support under scalar path for E810. Removed Items ------------- diff a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c (rejected hunks) @@ -31,6 +32,8 @@ #define ICE_HW_DEBUG_MASK_ARG "hw_debug_mask" #define ICE_ONE_PPS_OUT_ARG "pps_out" +#define ICE_CYCLECOUNTER_MASK 0xffffffffffffffffULL + uint64_t ice_timestamp_dynflag; int ice_timestamp_dynfield_offset = -1; diff a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c (rejected hunks) @@ -366,7 +367,10 @@ ice_program_hw_rx_queue(struct ice_rx_queue *rxq) regval |= (0x03 << QRXFLXP_CNTXT_RXDID_PRIO_S) & QRXFLXP_CNTXT_RXDID_PRIO_M; - if (rxq->offloads & DEV_RX_OFFLOAD_TIMESTAMP) + if (!ad->ptp_ena) { + if (rxq->offloads & DEV_RX_OFFLOAD_TIMESTAMP) + regval |= QRXFLXP_CNTXT_TS_M; + } else regval |= QRXFLXP_CNTXT_TS_M; ICE_WRITE_REG(hw, QRXFLXP_CNTXT(rxq->reg_idx), regval); @@ -1603,6 +1608,7 @@ ice_rx_scan_hw_ring(struct ice_rx_queue *rxq) struct ice_vsi *vsi = rxq->vsi; struct ice_hw *hw = ICE_VSI_TO_HW(vsi); uint64_t time, ts_ns; + struct ice_adapter *ad = rxq->vsi->adapter; rxdp = &rxq->rx_ring[rxq->rx_tail]; rxep = &rxq->sw_ring[rxq->rx_tail]; @@ -1660,6 +1666,15 @@ ice_rx_scan_hw_ring(struct ice_rx_queue *rxq) } } + if (ad->ptp_ena && ((mb->packet_type & + RTE_PTYPE_L2_MASK) == + RTE_PTYPE_L2_ETHER_TIMESYNC)) { + rxq->time_high = + rte_le_to_cpu_32(rxdp[j].wb.flex_ts.ts_high); + mb->timesync = rxq->queue_id; + pkt_flags |= PKT_RX_IEEE1588_PTP; + } + mb->ol_flags |= pkt_flags; } @@ -1846,6 +1861,7 @@ ice_recv_scattered_pkts(void *rx_queue, struct ice_vsi *vsi = rxq->vsi; struct ice_hw *hw = ICE_VSI_TO_HW(vsi); uint64_t time, ts_ns; + struct ice_adapter *ad = rxq->vsi->adapter; while (nb_rx < nb_pkts) { rxdp = &rx_ring[rx_id]; @@ -1971,6 +1987,14 @@ ice_recv_scattered_pkts(void *rx_queue, } } + if (ad->ptp_ena && ((first_seg->packet_type & RTE_PTYPE_L2_MASK) + == RTE_PTYPE_L2_ETHER_TIMESYNC)) { + rxq->time_high = + rte_le_to_cpu_32(rxd.wb.flex_ts.ts_high); + first_seg->timesync = rxq->queue_id; + pkt_flags |= PKT_RX_IEEE1588_PTP; + } + first_seg->ol_flags |= pkt_flags; /* Prefetch data of first segment, if configured to do so. */ rte_prefetch0(RTE_PTR_ADD(first_seg->buf_addr, @@ -2329,6 +2353,7 @@ ice_recv_pkts(void *rx_queue, struct ice_vsi *vsi = rxq->vsi; struct ice_hw *hw = ICE_VSI_TO_HW(vsi); uint64_t time, ts_ns; + struct ice_adapter *ad = rxq->vsi->adapter; while (nb_rx < nb_pkts) { rxdp = &rx_ring[rx_id]; @@ -2395,6 +2420,14 @@ ice_recv_pkts(void *rx_queue, } } + if (ad->ptp_ena && ((rxm->packet_type & RTE_PTYPE_L2_MASK) == + RTE_PTYPE_L2_ETHER_TIMESYNC)) { + rxq->time_high = + rte_le_to_cpu_32(rxd.wb.flex_ts.ts_high); + rxm->timesync = rxq->queue_id; + pkt_flags |= PKT_RX_IEEE1588_PTP; + } + rxm->ol_flags |= pkt_flags; /* copy old mbuf to rx_pkts */ rx_pkts[nb_rx++] = rxm; https://lab.dpdk.org/results/dashboard/patchsets/18889/ UNH-IOL DPDK Community Lab