HSI: core: Fix return freed object in hsi_new_client
[ Upstream commit a1ee1c08fc ]
cl is freed on error of calling device_register, but this
object is return later, which will cause uaf issue. Fix it
by return NULL on error.
Signed-off-by: Chengfeng Ye <cyeaa@connect.ust.hk>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
f4295b7dca
commit
240cf5d3cb
1 changed files with 1 additions and 0 deletions
|
|
@ -102,6 +102,7 @@ struct hsi_client *hsi_new_client(struct hsi_port *port,
|
|||
if (device_register(&cl->device) < 0) {
|
||||
pr_err("hsi: failed to register client: %s\n", info->name);
|
||||
put_device(&cl->device);
|
||||
goto err;
|
||||
}
|
||||
|
||||
return cl;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue