Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1228201 > unrolled thread

[PATCH 3/3] usb: gadget: f_midi: check for error on usb_ep_queue

Started byeu@felipetonello.com
First post2015-09-18 19:40 +0200
Last post2015-09-18 19:40 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 3/3] usb: gadget: f_midi: check for error on usb_ep_queue eu@felipetonello.com - 2015-09-18 19:40 +0200
    Re: [PATCH 3/3] usb: gadget: f_midi: check for error on usb_ep_queue Felipe Tonello <eu@felipetonello.com> - 2015-09-18 19:40 +0200

#1228201 — [PATCH 3/3] usb: gadget: f_midi: check for error on usb_ep_queue

Fromeu@felipetonello.com
Date2015-09-18 19:40 +0200
Subject[PATCH 3/3] usb: gadget: f_midi: check for error on usb_ep_queue
Message-ID<qa7NE-Xy-9@gated-at.bofh.it>
From: "Felipe F. Tonello" <eu@felipetonello.com>

f_midi is not checking weather the is an error on usb_ep_queue
request, ignoring potential problems, such as memory leaks.

Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
---

Changes for v2:
  - Update code style.

 drivers/usb/gadget/function/f_midi.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/gadget/function/f_midi.c b/drivers/usb/gadget/function/f_midi.c
index ad50a67..c04133422 100644
--- a/drivers/usb/gadget/function/f_midi.c
+++ b/drivers/usb/gadget/function/f_midi.c
@@ -543,10 +543,16 @@ static void f_midi_transmit(struct f_midi *midi, struct usb_request *req)
 		}
 	}
 
-	if (req->length > 0)
-		usb_ep_queue(ep, req, GFP_ATOMIC);
-	else
+	if (req->length > 0) {
+		int err;
+
+		err = usb_ep_queue(ep, req, GFP_ATOMIC);
+		if (err < 0)
+			ERROR(midi, "%s queue req: %d\n",
+			      midi->out_ep->name, err);
+	} else {
 		free_ep_req(ep, req);
+	}
 }
 
 static void f_midi_in_tasklet(unsigned long data)
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1228204

FromFelipe Tonello <eu@felipetonello.com>
Date2015-09-18 19:40 +0200
Message-ID<qa7NE-Xy-13@gated-at.bofh.it>
In reply to#1228201
On Fri, Sep 18, 2015 at 6:30 PM,  <eu@felipetonello.com> wrote:
> From: "Felipe F. Tonello" <eu@felipetonello.com>
>
> f_midi is not checking weather the is an error on usb_ep_queue
> request, ignoring potential problems, such as memory leaks.
>
> Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
> ---
>
> Changes for v2:
>   - Update code style.
>
>  drivers/usb/gadget/function/f_midi.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/usb/gadget/function/f_midi.c b/drivers/usb/gadget/function/f_midi.c
> index ad50a67..c04133422 100644
> --- a/drivers/usb/gadget/function/f_midi.c
> +++ b/drivers/usb/gadget/function/f_midi.c
> @@ -543,10 +543,16 @@ static void f_midi_transmit(struct f_midi *midi, struct usb_request *req)
>                 }
>         }
>
> -       if (req->length > 0)
> -               usb_ep_queue(ep, req, GFP_ATOMIC);
> -       else
> +       if (req->length > 0) {
> +               int err;
> +
> +               err = usb_ep_queue(ep, req, GFP_ATOMIC);
> +               if (err < 0)
> +                       ERROR(midi, "%s queue req: %d\n",
> +                             midi->out_ep->name, err);

I just realised there is a problem here. It is in_ep in this case. I
will fix it in v3.

> +       } else {
>                 free_ep_req(ep, req);
> +       }
>  }
>
>  static void f_midi_in_tasklet(unsigned long data)
> --
> 2.1.4
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web