[dpdk-dev] [PATCH v2] fm10k: set packet type for multi-segment packets
Michael Frasca
michael.frasca at oracle.com
Mon Apr 18 14:51:52 CEST 2016
When building a chain of mbufs for a multi-segment packet, the
packet_type field resides at the end of the chain. It should be
copied forward to the head of the list.
Also, uses RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE to guard packet-type
computation. The mbuf fields are not copied when this define is not set.
Fixes: fe65e1e1ce61 ("fm10k: add vector scatter Rx")
Signed-off-by: Michael Frasca <michael.frasca at oracle.com>
---
v2:
- Only copy hash, ol_flags, and packet_type to 'start' when
RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE is defined.
drivers/net/fm10k/fm10k_rxtx_vec.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/fm10k/fm10k_rxtx_vec.c b/drivers/net/fm10k/fm10k_rxtx_vec.c
index f8efe8f..03e4a5c 100644
--- a/drivers/net/fm10k/fm10k_rxtx_vec.c
+++ b/drivers/net/fm10k/fm10k_rxtx_vec.c
@@ -606,8 +606,11 @@ fm10k_reassemble_packets(struct fm10k_rx_queue *rxq,
if (!split_flags[buf_idx]) {
/* it's the last packet of the set */
+#ifdef RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE
start->hash = end->hash;
start->ol_flags = end->ol_flags;
+ start->packet_type = end->packet_type;
+#endif
pkts[pkt_idx++] = start;
start = end = NULL;
}
--
2.5.0
More information about the dev
mailing list