ENIC driver patch to set PKT_RX_VLAN_PKT only if pkt passed has VLAN tag
Change-Id: I72475bfe50e42886ffa8fb6e58eb8192892fa381 Signed-off-by: John Lo <loj@cisco.com>
This commit is contained in:
@ -0,0 +1,42 @@
|
||||
From 6a7a9e52ed2ccfa86c2def3a66a368a5577f2fc2 Mon Sep 17 00:00:00 2001
|
||||
From: John Daley <johndale@cisco.com>
|
||||
Date: Tue, 3 May 2016 13:56:05 -0700
|
||||
Subject: [PATCH] enic: Set PKT_RX_VLAN_PKT iff returned packet has VLAN tag
|
||||
|
||||
Only set the ol_flags PKT_RX_VLAN_PKT bit if the packet being passed
|
||||
to the application contains a VLAN tag. This is true whether
|
||||
stripping is enabled or disabled.
|
||||
|
||||
This area of the API is in flux, so behaviour may change in the
|
||||
future.
|
||||
|
||||
Signed-off-by: John Daley <johndale@cisco.com>
|
||||
---
|
||||
drivers/net/enic/enic_rxtx.c | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/enic/enic_rxtx.c b/drivers/net/enic/enic_rxtx.c
|
||||
index 02b54dd..6a95389 100644
|
||||
--- a/drivers/net/enic/enic_rxtx.c
|
||||
+++ b/drivers/net/enic/enic_rxtx.c
|
||||
@@ -206,12 +206,15 @@ enic_cq_rx_to_pkt_flags(struct cq_desc *cqd, struct rte_mbuf *mbuf)
|
||||
if (unlikely(!enic_cq_rx_desc_eop(ciflags)))
|
||||
goto mbuf_flags_done;
|
||||
|
||||
- /* VLAN stripping */
|
||||
+ /* VLAN stripping. Set PKT_RX_VLAN_PKT only if there is a vlan tag
|
||||
+ * in the packet passed up
|
||||
+ */
|
||||
if (bwflags & CQ_ENET_RQ_DESC_FLAGS_VLAN_STRIPPED) {
|
||||
- pkt_flags |= PKT_RX_VLAN_PKT;
|
||||
mbuf->vlan_tci = enic_cq_rx_desc_vlan(cqrd);
|
||||
} else {
|
||||
mbuf->vlan_tci = 0;
|
||||
+ if (enic_cq_rx_desc_vlan(cqrd))
|
||||
+ pkt_flags |= PKT_RX_VLAN_PKT;
|
||||
}
|
||||
|
||||
/* RSS flag */
|
||||
--
|
||||
2.7.0
|
||||
|
Reference in New Issue
Block a user