]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
power: supply: charger-manager: fix refcount leak in is_full_charged()
authorWenTao Liang <vulab@iscas.ac.cn>
Thu, 11 Jun 2026 00:53:21 +0000 (08:53 +0800)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Fri, 12 Jun 2026 22:00:56 +0000 (00:00 +0200)
commit4373cfa38ead58f980362c841b0d0bdf8c4d956c
tree208df44904c637c9bd5b38f95e6dd71956c5717f
parentba61aed9a34671222d1149acfc2f0179a9ce7e80
power: supply: charger-manager: fix refcount leak in is_full_charged()

In is_full_charged(), power_supply_get_by_name() is called to
obtain a reference to the fuel_gauge power supply. If the
voltage check (uV >= desc->fullbatt_uV) succeeds, the function
returns true directly without releasing the reference, leaking
the refcount.

Fix this by setting a flag and jumping to the out label where
power_supply_put() properly drops the reference.

Cc: stable@vger.kernel.org
Fixes: e132fc6bb89b ("power: supply: charger-manager: Make decisions focussed on battery status")
Signed-off-by: WenTao Liang <vulab@iscas.ac.cn>
Link: https://patch.msgid.link/20260611005322.53096-1-vulab@iscas.ac.cn
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/charger-manager.c