mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
power: supply: cw2015: Check devm_delayed_work_autocancel() return code
Since devm_delayed_work_autocancel() may fail, add return code check and
exit cw_bat_probe() on error.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Fixes: 0cb172a491 ("power: supply: cw2015: Use device managed API to simplify the code")
Signed-off-by: Ivan Abramov <i.abramov@mt-integration.ru>
Link: https://patch.msgid.link/20251008120711.556021-1-i.abramov@mt-integration.ru
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
This commit is contained in:
committed by
Sebastian Reichel
parent
6cdc4d488c
commit
92ec7e7b86
@@ -699,7 +699,13 @@ static int cw_bat_probe(struct i2c_client *client)
|
||||
if (!cw_bat->battery_workqueue)
|
||||
return -ENOMEM;
|
||||
|
||||
devm_delayed_work_autocancel(&client->dev, &cw_bat->battery_delay_work, cw_bat_work);
|
||||
ret = devm_delayed_work_autocancel(&client->dev, &cw_bat->battery_delay_work, cw_bat_work);
|
||||
if (ret) {
|
||||
dev_err_probe(&client->dev, ret,
|
||||
"Failed to register delayed work\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
queue_delayed_work(cw_bat->battery_workqueue,
|
||||
&cw_bat->battery_delay_work, msecs_to_jiffies(10));
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user