[dpdk-stable] patch 'net/sfc: cut non VLAN ID bits from TCI' has been queued to stable release 18.05.1

Christian Ehrhardt christian.ehrhardt at canonical.com
Mon Jul 30 18:12:02 CEST 2018


Hi,

FYI, your patch has been queued to stable release 18.05.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/01/18. So please
shout if anyone has objections.

Thanks.

Christian Ehrhardt <christian.ehrhardt at canonical.com>

---
>From d4ea23f02750a20acd698a17cba321b0b89f3a6b Mon Sep 17 00:00:00 2001
From: Andrew Rybchenko <arybchenko at solarflare.com>
Date: Fri, 29 Jun 2018 16:23:31 +0100
Subject: [PATCH] net/sfc: cut non VLAN ID bits from TCI

[ upstream commit 8028142107a858a146bfdbaa010b7e77ff987342 ]

TCI may contain PCP or DEI bits. Matching of these bits is not
supported, but the bits still may be set in specification value and
not covered by mask. So, these bits should be ignored.

Fixes: 894080975e1e ("net/sfc: support VLAN in flow API filters")

Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
Reviewed-by: Roman Zhukov <roman.zhukov at oktetlabs.ru>
---
 drivers/net/sfc/sfc_flow.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/sfc/sfc_flow.c b/drivers/net/sfc/sfc_flow.c
index 5613d59a9..18387415e 100644
--- a/drivers/net/sfc/sfc_flow.c
+++ b/drivers/net/sfc/sfc_flow.c
@@ -371,7 +371,8 @@ sfc_flow_parse_vlan(const struct rte_flow_item *item,
 	 * the outer tag and the next matches the inner tag.
 	 */
 	if (mask->tci == supp_mask.tci) {
-		vid = rte_bswap16(spec->tci);
+		/* Apply mask to keep VID only */
+		vid = rte_bswap16(spec->tci & mask->tci);
 
 		if (!(efx_spec->efs_match_flags &
 		      EFX_FILTER_MATCH_OUTER_VID)) {
-- 
2.17.1



More information about the stable mailing list