OSDN Git Service

mmc: sdhci-brcmstb: Initialize base_clk to NULL in sdhci_brcmstb_probe()
authorNathan Chancellor <nathan@kernel.org>
Wed, 8 Jun 2022 15:27:57 +0000 (08:27 -0700)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 12 Jul 2022 10:25:37 +0000 (12:25 +0200)
Clang warns a few times along the lines of:

  drivers/mmc/host/sdhci-brcmstb.c:302:6: warning: variable 'base_clk' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
          if (res)
              ^~~
  drivers/mmc/host/sdhci-brcmstb.c:376:24: note: uninitialized use occurs here
          clk_disable_unprepare(base_clk);
                                ^~~~~~~~

base_clk is used in the error path before it is initialized. Initialize
it to NULL, as clk_disable_unprepare() calls clk_disable() and
clk_unprepare(), which both handle NULL pointers gracefully.

Link: https://github.com/ClangBuiltLinux/linux/issues/1650
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20220608152757.82529-1-nathan@kernel.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-brcmstb.c

index f8dff85..28e9cf9 100644 (file)
@@ -256,7 +256,7 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev)
        struct sdhci_host *host;
        struct resource *iomem;
        struct clk *clk;
-       struct clk *base_clk;
+       struct clk *base_clk = NULL;
        int res;
 
        match = of_match_node(sdhci_brcm_of_match, pdev->dev.of_node);