Message ID | 20220218131535.100258-1-simon.horman@corigine.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 3a14d0888eb4b0045884126acc69abfb7b87814d |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] nfp: flower: Fix a potential leak in nfp_tunnel_add_shared_mac() | expand |
Hello: This patch was applied to netdev/net.git (master) by Jakub Kicinski <kuba@kernel.org>: On Fri, 18 Feb 2022 14:15:35 +0100 you wrote: > From: Christophe JAILLET <christophe.jaillet@wanadoo.fr> > > ida_simple_get() returns an id between min (0) and max (NFP_MAX_MAC_INDEX) > inclusive. > So NFP_MAX_MAC_INDEX (0xff) is a valid id. > > In order for the error handling path to work correctly, the 'invalid' > value for 'ida_idx' should not be in the 0..NFP_MAX_MAC_INDEX range, > inclusive. > > [...] Here is the summary with links: - [net] nfp: flower: Fix a potential leak in nfp_tunnel_add_shared_mac() https://git.kernel.org/netdev/net/c/3a14d0888eb4 You are awesome, thank you!
diff --git a/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c b/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c index 0a326e04e692..cb43651ea9ba 100644 --- a/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c +++ b/drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c @@ -922,8 +922,8 @@ nfp_tunnel_add_shared_mac(struct nfp_app *app, struct net_device *netdev, int port, bool mod) { struct nfp_flower_priv *priv = app->priv; - int ida_idx = NFP_MAX_MAC_INDEX, err; struct nfp_tun_offloaded_mac *entry; + int ida_idx = -1, err; u16 nfp_mac_idx = 0; entry = nfp_tunnel_lookup_offloaded_macs(app, netdev->dev_addr); @@ -997,7 +997,7 @@ nfp_tunnel_add_shared_mac(struct nfp_app *app, struct net_device *netdev, err_free_entry: kfree(entry); err_free_ida: - if (ida_idx != NFP_MAX_MAC_INDEX) + if (ida_idx != -1) ida_simple_remove(&priv->tun.mac_off_ids, ida_idx); return err;