]> 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:41:01 +0000 (18:41 +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 d229c2b83ea99ef4649e875f92355b6a2d831244..8c35cb85a9c0e9e979bbf890570799054ff0c56d 100644 (file)
@@ -1029,9 +1029,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;
 }