mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
Drivers: hv: vmbus: Use after free in __vmbus_open()
[ Upstream commit3e9bf43f7f] The "open_info" variable is added to the &vmbus_connection.chn_msg_list, but the error handling frees "open_info" without removing it from the list. This will result in a use after free. First remove it from the list, and then free it. Fixes:6f3d791f30("Drivers: hv: vmbus: Fix rescind handling issues") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Andrea Parri <parri.andrea@gmail.com> Link: https://lore.kernel.org/r/YHV3XLCot6xBS44r@mwanda Signed-off-by: Wei Liu <wei.liu@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
b49bdd70b3
commit
d5c7b42c9f
@@ -583,7 +583,7 @@ static int __vmbus_open(struct vmbus_channel *newchannel,
|
||||
|
||||
if (newchannel->rescind) {
|
||||
err = -ENODEV;
|
||||
goto error_free_info;
|
||||
goto error_clean_msglist;
|
||||
}
|
||||
|
||||
err = vmbus_post_msg(open_msg,
|
||||
|
||||
Reference in New Issue
Block a user