Jelajahi Sumber

usb: gadget: f_midi: fix leak on failed to enqueue out requests

This patch fixes a memory leak that occurs when an endpoint fails to enqueue
the request. If that happens the complete function will never be called, thus
never freeing the request.

Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Felipe F. Tonello 9 tahun lalu
induk
melakukan
ad0d1a058e
1 mengubah file dengan 1 tambahan dan 0 penghapusan
  1. 1 0
      drivers/usb/gadget/function/f_midi.c

+ 1 - 0
drivers/usb/gadget/function/f_midi.c

@@ -370,6 +370,7 @@ static int f_midi_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
 		if (err) {
 			ERROR(midi, "%s queue req: %d\n",
 				    midi->out_ep->name, err);
+			free_ep_req(midi->out_ep, req);
 		}
 	}