net/ice: add error cases for wrong packages
authorSimei Su <simei.su@intel.com>
Thu, 7 Nov 2019 07:34:43 +0000 (15:34 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 11 Nov 2019 13:23:02 +0000 (14:23 +0100)
If the switch/fdir/hash module can't resolve a correct parser,
it should return error.

Fixes: 47d460d63233 ("net/ice: rework switch filter")
Fixes: efc16c621415 ("net/ice: support flow director GTPU tunnel")
Fixes: 5ad3db8d4bdd ("net/ice: enable advanced RSS")

Signed-off-by: Simei Su <simei.su@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Xiaolong Ye <xiaolong.ye@intel.com>
drivers/net/ice/ice_fdir_filter.c
drivers/net/ice/ice_hash.c
drivers/net/ice/ice_switch_filter.c

index 6052bed..afab5af 100644 (file)
@@ -863,8 +863,10 @@ ice_fdir_init(struct ice_adapter *ad)
 
        if (ad->active_pkg_type == ICE_PKG_TYPE_COMMS)
                parser = &ice_fdir_parser_comms;
-       else
+       else if (ad->active_pkg_type == ICE_PKG_TYPE_OS_DEFAULT)
                parser = &ice_fdir_parser_os;
+       else
+               return -EINVAL;
 
        return ice_register_parser(parser, ad);
 }
index 3381b45..8dc3146 100644 (file)
@@ -242,6 +242,8 @@ ice_hash_init(struct ice_adapter *ad)
                parser = &ice_hash_parser_os;
        else if (ad->active_pkg_type == ICE_PKG_TYPE_COMMS)
                parser = &ice_hash_parser_comms;
+       else
+               return -EINVAL;
 
        return ice_register_parser(parser, ad);
 }
index 4be87c2..2406102 100644 (file)
@@ -1122,8 +1122,10 @@ ice_switch_init(struct ice_adapter *ad)
 
        if (ad->active_pkg_type == ICE_PKG_TYPE_COMMS)
                dist_parser = &ice_switch_dist_parser_comms;
-       else
+       else if (ad->active_pkg_type == ICE_PKG_TYPE_OS_DEFAULT)
                dist_parser = &ice_switch_dist_parser_os;
+       else
+               return -EINVAL;
 
        if (ad->devargs.pipe_mode_support)
                ret = ice_register_parser(perm_parser, ad);