Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f75338b authored by Vitaly Kuznetsov's avatar Vitaly Kuznetsov Committed by Greg Kroah-Hartman
Browse files

Drivers: hv: utils: fix memory leak on on_msg() failure



inmsg should be freed in case of on_msg() failure to avoid memory leak.
Preserve the error code from on_msg().

Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a689d251
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@ static ssize_t hvt_op_write(struct file *file, const char __user *buf,
{
	struct hvutil_transport *hvt;
	u8 *inmsg;
	int ret;

	hvt = container_of(file->f_op, struct hvutil_transport, fops);

@@ -84,11 +85,11 @@ static ssize_t hvt_op_write(struct file *file, const char __user *buf,
	if (IS_ERR(inmsg))
		return PTR_ERR(inmsg);

	if (hvt->on_msg(inmsg, count))
		return -EFAULT;
	ret = hvt->on_msg(inmsg, count);

	kfree(inmsg);

	return count;
	return ret ? ret : count;
}

static unsigned int hvt_op_poll(struct file *file, poll_table *wait)