ice: fix error return code in ice_get_recp_frm_fw()
authorWang Hai <wanghai38@huawei.com>
Tue, 26 Oct 2021 12:23:33 +0000 (20:23 +0800)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Thu, 28 Oct 2021 18:00:21 +0000 (11:00 -0700)
Return error code if devm_kmemdup() fails in ice_get_recp_frm_fw()

Fixes: fd2a6b71e300 ("ice: create advanced switch recipe")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Wang Hai <wanghai38@huawei.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_switch.c

index 2af03b9..793f4a9 100644 (file)
@@ -1363,8 +1363,10 @@ ice_get_recp_frm_fw(struct ice_hw *hw, struct ice_sw_recipe *recps, u8 rid,
        recps[rid].root_buf = devm_kmemdup(ice_hw_to_dev(hw), tmp,
                                           recps[rid].n_grp_count * sizeof(*recps[rid].root_buf),
                                           GFP_KERNEL);
-       if (!recps[rid].root_buf)
+       if (!recps[rid].root_buf) {
+               status = ICE_ERR_NO_MEMORY;
                goto err_unroll;
+       }
 
        /* Copy result indexes */
        bitmap_copy(recps[rid].res_idxs, result_bm, ICE_MAX_FV_WORDS);