[dpdk-dev] [PATCH 4/4] net/enic: extend fdir support for 1300 series adapters

Ferruh Yigit ferruh.yigit at intel.com
Tue Oct 11 11:22:15 CEST 2016


Hi John,

On 9/29/2016 9:56 PM, John Daley wrote:
> 1300 series Cisco adapter firmware version 2.0(13) for UCS
> C-series servers and 3.1(2) for blade servers supports more
> filtering capabilities. The feature can be enabled via Cisco
> CIMC or USCM with the 'advanced filters' radio button. When
> enabled, the these additional flow director modes are available:
> 	RTE_ETH_FLOW_NONFRAG_IPV4_OTHER
> 	RTE_ETH_FLOW_NONFRAG_IPV4_SCTP
> 	RTE_ETH_FLOW_NONFRAG_IPV6_UDP
> 	RTE_ETH_FLOW_NONFRAG_IPV6_TCP
> 	RTE_ETH_FLOW_NONFRAG_IPV6_SCTP
> 	RTE_ETH_FLOW_NONFRAG_IPV6_OTHER
> 
> Changes:
> - Detect and set an 'advanced filters' flag dependent on the adapter
>   capability.
> - Implement RTE_ETH_FILTER_INFO filter op to return the flow types
>   available dependent on whether advanced filters are enabled.
> - Use a function pointer to select how filters are added to the adapter:
>   copy_fltr_v1() for older firmware/adapters or copy_fltr_v2() for
>   adapters which support advanced filters.
> - Apply fdir global masks to filters when in advanced filter mode.
> - Update documentation.
> 
> Signed-off-by: John Daley <johndale at cisco.com>
> Reviewed-by: Nelson Escobar <neescoba at cisco.com>
> ---

<...>

>  
> +void enic_fdir_info_get(struct enic *enic, struct rte_eth_fdir_info *info)
> +{
> +	info->mode = enic->fdir.modes;

This cause a icc build error:
.../drivers/net/enic/enic_clsf.c(77):
error #188: enumerated type mixed with another type
        info->mode = enic->fdir.modes;
                   ^

Just casting to the enum fixes it:
+       info->mode = (enum rte_fdir_mode)enic->fdir.modes;

Since the modification is trivial, if you agree with the change, we can
apply it without needing a new version of the patch?

<...>


More information about the dev mailing list