Commit 07c84341 authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Felipe Balbi
Browse files

usb: gadget: f_tcm: Fix some resource leaks in some error paths



If a memory allocation fails within a 'usb_ep_alloc_request()' call, the
already allocated memory must be released.

Fix a mix-up in the code and free the correct requests.

Fixes: c52661d6 ("usb-gadget: Initial merge of target module for UASP + BOT")
Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: default avatarFelipe Balbi <balbi@kernel.org>
parent 9123e3a7
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -753,12 +753,13 @@ static int uasp_alloc_stream_res(struct f_uas *fu, struct uas_stream *stream)
		goto err_sts;

	return 0;

err_sts:
	usb_ep_free_request(fu->ep_status, stream->req_status);
	stream->req_status = NULL;
err_out:
	usb_ep_free_request(fu->ep_out, stream->req_out);
	stream->req_out = NULL;
err_out:
	usb_ep_free_request(fu->ep_in, stream->req_in);
	stream->req_in = NULL;
out:
	return -ENOMEM;
}