]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
memory: samsung: exynos5422-dmc: Fix kfree() of devm-allocated memory and missing static
authorLukasz Luba <l.luba@partner.samsung.com>
Thu, 19 Sep 2019 09:26:40 +0000 (11:26 +0200)
committerKrzysztof Kozlowski <krzk@kernel.org>
Tue, 1 Oct 2019 18:28:38 +0000 (20:28 +0200)
Fix issues captured by static checkers: use of kfree() on
resource-managed memory and missing 'static' in the private function.

Fixes Smatch warning:
    drivers/memory/samsung/exynos5422-dmc.c:272
        exynos5_init_freq_table() warn: passing devm_ allocated variable to kfree. 'dmc->opp'

Fixes Sparse warning:
    drivers/memory/samsung/exynos5422-dmc.c:736:1:
        warning: symbol 'exynos5_dmc_align_init_freq' was not declared.

Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Reported-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Lukasz Luba <l.luba@partner.samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
drivers/memory/samsung/exynos5422-dmc.c

index ac5f55813900fe3de52878eab37b9846527efbb5..0fe5f2186139acd44c18efe2ddda86b0f749de4f 100644 (file)
@@ -258,7 +258,7 @@ static int exynos5_init_freq_table(struct exynos5_dmc *dmc,
 
                opp = dev_pm_opp_find_freq_floor(dmc->dev, &freq);
                if (IS_ERR(opp))
-                       goto err_free_tables;
+                       goto err_opp;
 
                dmc->opp[idx - i].freq_hz = freq;
                dmc->opp[idx - i].volt_uv = dev_pm_opp_get_voltage(opp);
@@ -268,8 +268,6 @@ static int exynos5_init_freq_table(struct exynos5_dmc *dmc,
 
        return 0;
 
-err_free_tables:
-       kfree(dmc->opp);
 err_opp:
        dev_pm_opp_of_remove_table(dmc->dev);
 
@@ -732,7 +730,7 @@ static struct devfreq_dev_profile exynos5_dmc_df_profile = {
  * statistics engine which supports only registered values. Thus, some alignment
  * must be made.
  */
-unsigned long
+static unsigned long
 exynos5_dmc_align_init_freq(struct exynos5_dmc *dmc,
                            unsigned long bootloader_init_freq)
 {