diff options
| author | Bart Van Assche <bvanassche@acm.org> | 2024-09-17 12:39:14 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-12-05 14:02:29 +0100 |
| commit | f7f7f22dbb82133a3675ab946049f433106662c4 (patch) | |
| tree | 70e77f3b57e01076830ff90eb2f507d6b47cb492 /drivers/power | |
| parent | d5d83242a1d778ceb6d8b07c6b491cf7483ca112 (diff) | |
| download | linux-f7f7f22dbb82133a3675ab946049f433106662c4.tar.gz linux-f7f7f22dbb82133a3675ab946049f433106662c4.tar.bz2 linux-f7f7f22dbb82133a3675ab946049f433106662c4.zip | |
power: supply: core: Remove might_sleep() from power_supply_put()
[ Upstream commit f6da4553ff24a5d1c959c9627c965323adc3d307 ]
The put_device() call in power_supply_put() may call
power_supply_dev_release(). The latter function does not sleep so
power_supply_put() doesn't sleep either. Hence, remove the might_sleep()
call from power_supply_put(). This patch suppresses false positive
complaints about calling a sleeping function from atomic context if
power_supply_put() is called from atomic context.
Cc: Kyle Tso <kyletso@google.com>
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Fixes: 1a352462b537 ("power_supply: Add power_supply_put for decrementing device reference counter")
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240917193914.47566-1-bvanassche@acm.org
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/power')
| -rw-r--r-- | drivers/power/supply/power_supply_core.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/power/supply/power_supply_core.c b/drivers/power/supply/power_supply_core.c index 49534458a9f7..73cc9c236e83 100644 --- a/drivers/power/supply/power_supply_core.c +++ b/drivers/power/supply/power_supply_core.c @@ -484,8 +484,6 @@ EXPORT_SYMBOL_GPL(power_supply_get_by_name); */ void power_supply_put(struct power_supply *psy) { - might_sleep(); - atomic_dec(&psy->use_cnt); put_device(&psy->dev); } |
