mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 04:31:50 +00:00
i3c: master: fix a memory leak bug
In i3c_master_getmwl_locked(), the buffer used for the dest payload data is allocated using kzalloc() in i3c_ccc_cmd_dest_init(). Later on, the length of the dest payload data is checked against 'sizeof(*mwl)'. If they are not equal, -EIO is returned to indicate the error. However, the allocated buffer is not deallocated on this path, leading to a memory leak. To fix the above issue, free the buffer before returning the error. Signed-off-by: Wenwen Wang <wenwen@cs.uga.edu> Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
This commit is contained in:
parent
b1ac3a4b9a
commit
7afe9a4e56
@ -1041,8 +1041,10 @@ static int i3c_master_getmwl_locked(struct i3c_master_controller *master,
|
||||
if (ret)
|
||||
goto out;
|
||||
|
||||
if (dest.payload.len != sizeof(*mwl))
|
||||
return -EIO;
|
||||
if (dest.payload.len != sizeof(*mwl)) {
|
||||
ret = -EIO;
|
||||
goto out;
|
||||
}
|
||||
|
||||
info->max_write_len = be16_to_cpu(mwl->len);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user