Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a89cdd8e authored by Casey Leedom's avatar Casey Leedom Committed by David S. Miller
Browse files

cxgb4: impose mandatory VLAN usage when non-zero TAG ID



When a non-zero VLAN Tag ID is passed to t4_set_vlan_acl()
then impose mandatory VLAN Usage with that VLAN ID.
I.e any other VLAN ID should result in packets getting
dropped.

Signed-off-by: default avatarCasey Leedom <leedom@chelsio.com>
Signed-off-by: default avatarGanesh Goudar <ganeshgr@chelsio.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent be7e1b33
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -10210,6 +10210,9 @@ int t4_set_vlan_acl(struct adapter *adap, unsigned int mbox, unsigned int vf,
	vlan_cmd.en_to_len16 = cpu_to_be32(enable | FW_LEN16(vlan_cmd));
	/* Drop all packets that donot match vlan id */
	vlan_cmd.dropnovlan_fm = FW_ACL_VLAN_CMD_FM_F;
	vlan_cmd.dropnovlan_fm = (enable
				  ? (FW_ACL_VLAN_CMD_DROPNOVLAN_F |
				     FW_ACL_VLAN_CMD_FM_F) : 0);
	if (enable != 0) {
		vlan_cmd.nvlan = 1;
		vlan_cmd.vlanid[0] = cpu_to_be16(vlan);
+1 −0
Original line number Diff line number Diff line
@@ -2464,6 +2464,7 @@ struct fw_acl_vlan_cmd {

#define FW_ACL_VLAN_CMD_DROPNOVLAN_S	7
#define FW_ACL_VLAN_CMD_DROPNOVLAN_V(x)	((x) << FW_ACL_VLAN_CMD_DROPNOVLAN_S)
#define FW_ACL_VLAN_CMD_DROPNOVLAN_F    FW_ACL_VLAN_CMD_DROPNOVLAN_V(1U)

#define FW_ACL_VLAN_CMD_FM_S		6
#define FW_ACL_VLAN_CMD_FM_M		0x1