]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
igb: Fix potential memory leak in igb_add_ethtool_nfc_entry
authorMateusz Palczewski <mateusz.palczewski@intel.com>
Thu, 19 Oct 2023 20:40:35 +0000 (13:40 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 8 Nov 2023 10:21:05 +0000 (11:21 +0100)
[ Upstream commit 8c0b48e01daba5ca58f939a8425855d3f4f2ed14 ]

Add check for return of igb_update_ethtool_nfc_entry so that in case
of any potential errors the memory alocated for input will be freed.

Fixes: 0e71def25281 ("igb: add support of RX network flow classification")
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Signed-off-by: Mateusz Palczewski <mateusz.palczewski@intel.com>
Tested-by: Arpana Arland <arpanax.arland@intel.com> (A Contingent worker at Intel)
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/intel/igb/igb_ethtool.c

index 77108b0a07f51d7492a0dd95691706aa5aac3cdd..c8b5650b7eac5b1e8bdb03215e0c36a67f977ec5 100644 (file)
@@ -2951,11 +2951,15 @@ static int igb_add_ethtool_nfc_entry(struct igb_adapter *adapter,
        if (err)
                goto err_out_w_lock;
 
-       igb_update_ethtool_nfc_entry(adapter, input, input->sw_idx);
+       err = igb_update_ethtool_nfc_entry(adapter, input, input->sw_idx);
+       if (err)
+               goto err_out_input_filter;
 
        spin_unlock(&adapter->nfc_lock);
        return 0;
 
+err_out_input_filter:
+       igb_erase_filter(adapter, input);
 err_out_w_lock:
        spin_unlock(&adapter->nfc_lock);
 err_out: