src/dpdk/drivers/net/i40e/i40e_ethdev.c
int
i40e_sw_ethertype_filter_del(struct i40e_pf *pf,
			     struct i40e_ethertype_filter_input *input)
{
	struct i40e_ethertype_rule *rule = &pf->ethertype;
	struct i40e_ethertype_filter *filter;
	int ret;

	ret = rte_hash_del_key(rule->hash_table, input);
	if (ret < 0) {
		PMD_DRV_LOG(ERR,
			    "Failed to delete ethertype filter"
			    " to hash table %d!",
			    ret);
		return ret;
	}
	filter = rule->hash_map[ret];
	rule->hash_map[ret] = NULL;

	TAILQ_REMOVE(&rule->ethertype_list, filter, rules);
	rte_free(filter);

	return 0;
}
/* Delete ethertype filter in SW list */
Delete ethertype filter in SW list
Delete ethertype filter in SW list
int
i40e_sw_ethertype_filter_del(struct i40e_pf *pf,
			     struct i40e_ethertype_filter_input *input)
{
	struct i40e_ethertype_rule *rule = &pf->ethertype;
	struct i40e_ethertype_filter *filter;
	int ret;
	ret = rte_hash_del_key(rule->hash_table, input);
	if (ret < 0) {
		PMD_DRV_LOG(ERR,
			    "Failed to delete ethertype filter"
			    " to hash table %d!",
			    ret);
		return ret;
	}
	filter = rule->hash_map[ret];
	rule->hash_map[ret] = NULL;
	TAILQ_REMOVE(&rule->ethertype_list, filter, rules);
	rte_free(filter);
	return 0;
}
int i40e_sw_ethertype_filter_del ( struct i40e_pf * pf , struct i40e_ethertype_filter_input * input ) { struct i40e_ethertype_rule * rule = & pf -> ethertype ; struct i40e_ethertype_filter * filter ; int ret ; ret = rte_hash_del_key ( rule -> hash_table , input ) ; if ( ret < 0 ) { PMD_DRV_LOG ( ERR , " " " " , ret ) ; return ret ; } filter = rule -> hash_map [ ret ] ; rule -> hash_map [ ret ] = NULL ; TAILQ_REMOVE ( & rule -> ethertype_list , filter , rules ) ; rte_free ( filter ) ; return 0 ; }
Delete ethertype filter in SW list
Delete ethertype filter in SW list