Commit 64e711ca authored by Amritha Nambiar's avatar Amritha Nambiar Committed by Jeff Kirsher

i40e: Remove UDP support for big buffer

Since UDP based filters are not supported via big buffer cloud
filters, remove UDP support.  Also change a few return types to
indicate unsupported vs invalid configuration.
Signed-off-by: default avatarAmritha Nambiar <amritha.nambiar@intel.com>
Acked-by: default avatarAlexander Duyck <alexander.h.duyck@intel.com>
Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent c0955087
...@@ -6038,8 +6038,8 @@ static int i40e_validate_and_set_switch_mode(struct i40e_vsi *vsi) ...@@ -6038,8 +6038,8 @@ static int i40e_validate_and_set_switch_mode(struct i40e_vsi *vsi)
/* Set Bit 7 to be valid */ /* Set Bit 7 to be valid */
mode = I40E_AQ_SET_SWITCH_BIT7_VALID; mode = I40E_AQ_SET_SWITCH_BIT7_VALID;
/* Set L4type to both TCP and UDP support */ /* Set L4type for TCP support */
mode |= I40E_AQ_SET_SWITCH_L4_TYPE_BOTH; mode |= I40E_AQ_SET_SWITCH_L4_TYPE_TCP;
/* Set cloud filter mode */ /* Set cloud filter mode */
mode |= I40E_AQ_SET_SWITCH_MODE_NON_TUNNEL; mode |= I40E_AQ_SET_SWITCH_MODE_NON_TUNNEL;
...@@ -6969,18 +6969,18 @@ static int i40e_add_del_cloud_filter_big_buf(struct i40e_vsi *vsi, ...@@ -6969,18 +6969,18 @@ static int i40e_add_del_cloud_filter_big_buf(struct i40e_vsi *vsi,
is_valid_ether_addr(filter->src_mac)) || is_valid_ether_addr(filter->src_mac)) ||
(is_multicast_ether_addr(filter->dst_mac) && (is_multicast_ether_addr(filter->dst_mac) &&
is_multicast_ether_addr(filter->src_mac))) is_multicast_ether_addr(filter->src_mac)))
return -EINVAL; return -EOPNOTSUPP;
/* Make sure port is specified, otherwise bail out, for channel /* Big buffer cloud filter needs 'L4 port' to be non-zero. Also, UDP
* specific cloud filter needs 'L4 port' to be non-zero * ports are not supported via big buffer now.
*/ */
if (!filter->dst_port) if (!filter->dst_port || filter->ip_proto == IPPROTO_UDP)
return -EINVAL; return -EOPNOTSUPP;
/* adding filter using src_port/src_ip is not supported at this stage */ /* adding filter using src_port/src_ip is not supported at this stage */
if (filter->src_port || filter->src_ipv4 || if (filter->src_port || filter->src_ipv4 ||
!ipv6_addr_any(&filter->ip.v6.src_ip6)) !ipv6_addr_any(&filter->ip.v6.src_ip6))
return -EINVAL; return -EOPNOTSUPP;
/* copy element needed to add cloud filter from filter */ /* copy element needed to add cloud filter from filter */
i40e_set_cld_element(filter, &cld_filter.element); i40e_set_cld_element(filter, &cld_filter.element);
...@@ -6991,7 +6991,7 @@ static int i40e_add_del_cloud_filter_big_buf(struct i40e_vsi *vsi, ...@@ -6991,7 +6991,7 @@ static int i40e_add_del_cloud_filter_big_buf(struct i40e_vsi *vsi,
is_multicast_ether_addr(filter->src_mac)) { is_multicast_ether_addr(filter->src_mac)) {
/* MAC + IP : unsupported mode */ /* MAC + IP : unsupported mode */
if (filter->dst_ipv4) if (filter->dst_ipv4)
return -EINVAL; return -EOPNOTSUPP;
/* since we validated that L4 port must be valid before /* since we validated that L4 port must be valid before
* we get here, start with respective "flags" value * we get here, start with respective "flags" value
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment