Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 May 2018 20:22:04 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r333182 - head/sys/dev/mlx5/mlx5_en
Message-ID:  <201805022022.w42KM4UQ063638@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Wed May  2 20:22:03 2018
New Revision: 333182
URL: https://svnweb.freebsd.org/changeset/base/333182

Log:
  mlx5en: Always allow VLAN id 0.
  
  According to the 802.1Q-2014 9.6 VLAN Tag Control Information, VID value 0
  means that there is no VLAN tag assigned to the packet, and only PCP and
  DEI values from the tag are meaningful.  Current flow table programming
  filter out such packets.
  
  When programming VLAN filter for flow table, unconditionally add rule which
  accept packets with VLAN id 0.  The packets are already handled correctly
  by the network stack.
  
  Reviewed by:	hselasky, slavash
  Sponsored by:	Mellanox Technologies
  MFC after:	1 week

Modified:
  head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c

Modified: head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
==============================================================================
--- head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c	Wed May  2 20:15:02 2018	(r333181)
+++ head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c	Wed May  2 20:22:03 2018	(r333182)
@@ -696,6 +696,7 @@ mlx5e_add_all_vlan_rules(struct mlx5e_priv *priv)
 	int err;
 	int i;
 
+	set_bit(0, priv->vlan.active_vlans);
 	for_each_set_bit(i, priv->vlan.active_vlans, VLAN_N_VID) {
 		err = mlx5e_add_vlan_rule(priv, MLX5E_VLAN_RULE_TYPE_MATCH_VID,
 					  i);
@@ -727,6 +728,7 @@ mlx5e_del_all_vlan_rules(struct mlx5e_priv *priv)
 
 	for_each_set_bit(i, priv->vlan.active_vlans, VLAN_N_VID)
 		mlx5e_del_vlan_rule(priv, MLX5E_VLAN_RULE_TYPE_MATCH_VID, i);
+	clear_bit(0, priv->vlan.active_vlans);
 }
 
 #define	mlx5e_for_each_hash_node(hn, tmp, hash, i) \



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201805022022.w42KM4UQ063638>