summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeita Suzuki <keitasuzuki.park@sslab.ics.keio.ac.jp>2020-10-30 07:14:30 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-03-17 16:43:46 +0100
commit105e4f983100d20029bf0afd7c15c4d55cc11b40 (patch)
tree6e2d722a5e3436054e2d76aa31299e38971a1bc1
parent6a8b02ead7f7ed10af3dbe180c524e0b5ce16c6e (diff)
downloadlinux-stable-105e4f983100d20029bf0afd7c15c4d55cc11b40.tar.gz
linux-stable-105e4f983100d20029bf0afd7c15c4d55cc11b40.tar.bz2
linux-stable-105e4f983100d20029bf0afd7c15c4d55cc11b40.zip
i40e: Fix memory leak in i40e_probe
[ Upstream commit 58cab46c622d6324e47bd1c533693c94498e4172 ] Struct i40e_veb is allocated in function i40e_setup_pf_switch, and stored to an array field veb inside struct i40e_pf. However when i40e_setup_misc_vector fails, this memory leaks. Fix this by calling exit and teardown functions. Signed-off-by: Keita Suzuki <keitasuzuki.park@sslab.ics.keio.ac.jp> Tested-by: Tony Brelinski <tonyx.brelinski@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/ethernet/intel/i40e/i40e_main.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c
index fe9da568ee19..1591f81d8ae3 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_main.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c
@@ -13956,6 +13956,8 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (err) {
dev_info(&pdev->dev,
"setup of misc vector failed: %d\n", err);
+ i40e_cloud_filter_exit(pf);
+ i40e_fdir_teardown(pf);
goto err_vsis;
}
}