diff options
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice_tc_lib.c')
| -rw-r--r-- | drivers/net/ethernet/intel/ice/ice_tc_lib.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_tc_lib.c b/drivers/net/ethernet/intel/ice/ice_tc_lib.c index 0a0c55fb8699..b803f2ab3cc7 100644 --- a/drivers/net/ethernet/intel/ice/ice_tc_lib.c +++ b/drivers/net/ethernet/intel/ice/ice_tc_lib.c @@ -524,6 +524,7 @@ ice_eswitch_add_tc_fltr(struct ice_vsi *vsi, struct ice_tc_flower_fltr *fltr)  	 */  	fltr->rid = rule_added.rid;  	fltr->rule_id = rule_added.rule_id; +	fltr->dest_id = rule_added.vsi_handle;  exit:  	kfree(list); @@ -993,7 +994,9 @@ ice_parse_cls_flower(struct net_device *filter_dev, struct ice_vsi *vsi,  		n_proto_key = ntohs(match.key->n_proto);  		n_proto_mask = ntohs(match.mask->n_proto); -		if (n_proto_key == ETH_P_ALL || n_proto_key == 0) { +		if (n_proto_key == ETH_P_ALL || n_proto_key == 0 || +		    fltr->tunnel_type == TNL_GTPU || +		    fltr->tunnel_type == TNL_GTPC) {  			n_proto_key = 0;  			n_proto_mask = 0;  		} else {  | 
