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

Commit e1f80467 authored by David Cohen's avatar David Cohen Committed by Felipe Balbi
Browse files

usb: dwc3: gadget: avoid memory leak when failing to allocate all eps



If dwc3_gadget_init_endpoint() fails after allocate some of the eps, we
need to free their memory to avoid leak.

Signed-off-by: default avatarDavid Cohen <david.a.cohen@linux.intel.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent bbaa7c81
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -2611,15 +2611,13 @@ int dwc3_gadget_init(struct dwc3 *dwc)
	ret = usb_add_gadget_udc(dwc->dev, &dwc->gadget);
	if (ret) {
		dev_err(dwc->dev, "failed to register udc\n");
		goto err5;
		goto err4;
	}

	return 0;

err5:
	dwc3_gadget_free_endpoints(dwc);

err4:
	dwc3_gadget_free_endpoints(dwc);
	dma_free_coherent(dwc->dev, DWC3_EP0_BOUNCE_SIZE,
			dwc->ep0_bounce, dwc->ep0_bounce_addr);