2018-07-20 08:16:48

by Mathias Nyman

[permalink] [raw]
Subject: Re: [PATCH] usb: xhci: Fix memory leak in xhci_endpoint_reset()

On 09.07.2018 10:12, [email protected] wrote:
>
> From: Zheng Xiaowei <[email protected]>
>
> If td_list is not empty the cfg_cmd will not be freed,
> call xhci_free_command to free it.
>
> Signed-off-by: Zheng Xiaowei <[email protected]>
> ---
> drivers/usb/host/xhci.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
> index 2f4850f..68e6132 100644
> --- a/drivers/usb/host/xhci.c
> +++ b/drivers/usb/host/xhci.c
> @@ -3051,6 +3051,7 @@ static void xhci_endpoint_reset(struct usb_hcd *hcd,
> if (!list_empty(&ep->ring->td_list)) {
> dev_err(&udev->dev, "EP not empty, refuse reset\n");
> spin_unlock_irqrestore(&xhci->lock, flags);
> + xhci_free_command(xhci, cfg_cmd);
> goto cleanup;
> }
> xhci_queue_stop_endpoint(xhci, stop_cmd, udev->slot_id, ep_index, 0);
>

Thanks, adding to queue

-Mathias