]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
iwlwifi: mvm: Fix a memory leak in an error handling path in 'iwl_mvm_sar_get_wgds_ta...
authorChristophe Jaillet <christophe.jaillet@wanadoo.fr>
Fri, 14 Jul 2017 10:06:59 +0000 (12:06 +0200)
committerLuca Coelho <luciano.coelho@intel.com>
Sat, 5 Aug 2017 18:28:24 +0000 (21:28 +0300)
We should free 'wgds.pointer' here as done a few lines above in another
error handling path.
It was allocated within 'acpi_evaluate_object()'.

Fixes: c52030a01ccc ("iwlwifi: mvm: add GEO_TX_POWER_LIMIT cmd for geographic tx power table")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw.c

index 79e7a7a285dc960597e945ce7b80f96e729a86ad..82863e9273eb66ce9058a5974d2f35988290e1dc 100644 (file)
@@ -1275,8 +1275,10 @@ static int iwl_mvm_sar_get_wgds_table(struct iwl_mvm *mvm)
 
                        entry = &wifi_pkg->package.elements[idx++];
                        if ((entry->type != ACPI_TYPE_INTEGER) ||
-                           (entry->integer.value > U8_MAX))
-                               return -EINVAL;
+                           (entry->integer.value > U8_MAX)) {
+                               ret = -EINVAL;
+                               goto out_free;
+                       }
 
                        mvm->geo_profiles[i].values[j] = entry->integer.value;
                }