usb: gadget: f_midi: fail if set_alt fails to allocate requests
authorFelipe F. Tonello <eu@felipetonello.com>
Tue, 1 Dec 2015 18:31:01 +0000 (18:31 +0000)
committerFelipe Balbi <balbi@ti.com>
Wed, 16 Dec 2015 16:07:29 +0000 (10:07 -0600)
This ensures that the midi function will only work if the proper number of
IN and OUT requrests are allocated. Otherwise the function will work with less
requests then what the user wants.

Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/gadget/function/f_midi.c

index e804231bd8e596b191d4d4e8d49a7307dd94c807..79dc611a2fc46b5427ecb60bd5f5357fd4cee0a5 100644 (file)
@@ -344,9 +344,10 @@ static int f_midi_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
                req->complete = f_midi_complete;
                err = usb_ep_queue(midi->out_ep, req, GFP_ATOMIC);
                if (err) {
-                       ERROR(midi, "%s queue req: %d\n",
+                       ERROR(midi, "%s: couldn't enqueue request: %d\n",
                                    midi->out_ep->name, err);
                        free_ep_req(midi->out_ep, req);
+                       return err;
                }
        }