net/ice: refactor input set config
authorZhirun Yan <zhirun.yan@intel.com>
Tue, 2 Mar 2021 02:54:05 +0000 (10:54 +0800)
committerQi Zhang <qi.z.zhang@intel.com>
Fri, 5 Mar 2021 08:46:34 +0000 (09:46 +0100)
For tunnel or non-tunnel packet, the input set is in outer_input_set
and use seg_tun[0]. seg_tun[1] is only used for tunnel inner fields.
This patch make align with input_set inner/outer with seg_tun[] and
simplify it.

Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/ice/ice_fdir_filter.c

index 6bee2b1..9cc0e6e 100644 (file)
@@ -1013,7 +1013,7 @@ ice_fdir_input_set_conf(struct ice_pf *pf, enum ice_fltr_ptype flow,
                return -ENOMEM;
        }
 
-       /* use seg_tun[1] to record tunnel inner part or non-tunnel */
+       /* use seg_tun[1] to record tunnel inner part */
        for (k = 0; k <= ICE_FD_HW_SEG_TUN; k++) {
                seg = &seg_tun[k];
                input_set = (k == ICE_FD_HW_SEG_TUN) ? inner_input_set : outer_input_set;
@@ -1036,13 +1036,9 @@ ice_fdir_input_set_conf(struct ice_pf *pf, enum ice_fltr_ptype flow,
        }
 
        is_tunnel = ice_fdir_is_tunnel_profile(ttype);
-       if (!is_tunnel) {
-               ret = ice_fdir_hw_tbl_conf(pf, pf->main_vsi, pf->fdir.fdir_vsi,
-                                          seg_tun + 1, flow, false);
-       } else {
-               ret = ice_fdir_hw_tbl_conf(pf, pf->main_vsi, pf->fdir.fdir_vsi,
-                                          seg_tun, flow, true);
-       }
+
+       ret = ice_fdir_hw_tbl_conf(pf, pf->main_vsi, pf->fdir.fdir_vsi,
+                                  seg_tun, flow, is_tunnel);
 
        if (!ret) {
                return ret;