]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mmc: rtsx_usb_sdmmc: Fix error-path in sd_set_power_mode()
authorUlf Hansson <ulf.hansson@linaro.org>
Tue, 10 Jun 2025 11:16:23 +0000 (13:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Aug 2025 16:30:25 +0000 (18:30 +0200)
[ Upstream commit 47a255f7d2eabee06cfbf5b1c2379749442fd01d ]

In the error path of sd_set_power_mode() we don't update host->power_mode,
which could lead to an imbalance of the runtime PM usage count. Fix this by
always updating host->power_mode.

Reviewed-by: Avri Altman <avri.altman@sandisk.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Ricky Wu <ricky_wu@realtek.com>
Link: https://lore.kernel.org/r/20250610111633.504366-2-ulf.hansson@linaro.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mmc/host/rtsx_usb_sdmmc.c

index 4e86f0a705b60a984f2b314c8316146a13642705..2bf51fe11a0904e57ab1c25ddc533bfb03be5197 100644 (file)
@@ -1032,9 +1032,7 @@ static int sd_set_power_mode(struct rtsx_usb_sdmmc *host,
                err = sd_power_on(host);
        }
 
-       if (!err)
-               host->power_mode = power_mode;
-
+       host->power_mode = power_mode;
        return err;
 }