Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753625AbbKMILR (ORCPT ); Fri, 13 Nov 2015 03:11:17 -0500 Received: from mailout2.w1.samsung.com ([210.118.77.12]:65522 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750779AbbKMILP (ORCPT ); Fri, 13 Nov 2015 03:11:15 -0500 X-AuditID: cbfec7f5-f794b6d000001495-00-56459b21f4a0 Subject: Re: [PATCH v5 3/7] usb: gadget: define free_ep_req as universal function To: "Felipe F. Tonello" , linux-usb@vger.kernel.org References: <1447177929-22252-1-git-send-email-eu@felipetonello.com> <1447177929-22252-4-git-send-email-eu@felipetonello.com> Cc: linux-kernel@vger.kernel.org, Felipe Balbi , Greg Kroah-Hartman , Clemens Ladisch From: Robert Baldyga Message-id: <56459B1F.9050303@samsung.com> Date: Fri, 13 Nov 2015 09:11:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-version: 1.0 In-reply-to: <1447177929-22252-4-git-send-email-eu@felipetonello.com> Content-type: text/plain; charset=windows-1252 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrKLMWRmVeSWpSXmKPExsVy+t/xq7qKs13DDN79lbA4eL/eYsmJh0wW nfPPsls0L17PZnF51xw2i0XLWpkd2Dzufn3I7vFjRT+zx/65a9g9jt/YzuTxeZNcAGsUl01K ak5mWWqRvl0CV8bJBx9YCnbJVhxb+Y6xgXGaRBcjJ4eEgIlEd9dTVghbTOLCvfVsXYxcHEIC SxklVjz9zwrhPGOUaL11iw2kSlggWOL0moeMILaIgKfEic/rmEFsIYF6iWl3D7OANDALzGCU 6NtxH6yBTUBHYsv3CWANvAJaEl/vPWQBsVkEVCV+7TsCZosKREhMnNDAClEjKPFj8j2wOKeA q8Slnh6gBRxAQ/Uk7l/UAgkzC8hLbF7zlnkCo8AsJB2zEKpmIalawMi8ilE0tTS5oDgpPddI rzgxt7g0L10vOT93EyMksL/uYFx6zOoQowAHoxIPb8IzlzAh1sSy4srcQ4wSHMxKIryLQUK8 KYmVValF+fFFpTmpxYcYpTlYlMR5Z+56HyIkkJ5YkpqdmlqQWgSTZeLglGpgDIiSr5UT1NSr beySP9m2dva3JRwvPp7xrdmrJVyvcfjG8ynmcSsCqh0WnmnO0b7yVG3eCaUyrw8h7XN3WNss a1nlG5Rj0M/AxXV15t2vZsJHFFoyfd8qXH/VWc3cYcn4+5Jy49UiAbHk3Lgz+3+tNdd2dL43 reKG2pklYovsv8zP/fY9ZKWmEktxRqKhFnNRcSIAiLxrlGgCAAA= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3911 Lines: 109 On 11/10/2015 06:52 PM, Felipe F. Tonello wrote: > This function is shared between gadget functions, so this avoid unnecessary > duplicated code and potentially avoid memory leaks. > > Signed-off-by: Felipe F. Tonello Reviewed-by: Robert Baldyga > --- > drivers/usb/gadget/function/f_midi.c | 6 ------ > drivers/usb/gadget/function/f_sourcesink.c | 6 ------ > drivers/usb/gadget/function/g_zero.h | 1 - > drivers/usb/gadget/u_f.c | 1 - > drivers/usb/gadget/u_f.h | 10 ++++++++-- > 5 files changed, 8 insertions(+), 16 deletions(-) > > diff --git a/drivers/usb/gadget/function/f_midi.c b/drivers/usb/gadget/function/f_midi.c > index 488111d..f36db2d 100644 > --- a/drivers/usb/gadget/function/f_midi.c > +++ b/drivers/usb/gadget/function/f_midi.c > @@ -201,12 +201,6 @@ static inline struct usb_request *midi_alloc_ep_req(struct usb_ep *ep, > return alloc_ep_req(ep, length, length); > } > > -static void free_ep_req(struct usb_ep *ep, struct usb_request *req) > -{ > - kfree(req->buf); > - usb_ep_free_request(ep, req); > -} > - > static const uint8_t f_midi_cin_length[] = { > 0, 0, 2, 3, 3, 1, 2, 3, 3, 3, 3, 3, 2, 2, 3, 1 > }; > diff --git a/drivers/usb/gadget/function/f_sourcesink.c b/drivers/usb/gadget/function/f_sourcesink.c > index d7646d3..74f95b1 100644 > --- a/drivers/usb/gadget/function/f_sourcesink.c > +++ b/drivers/usb/gadget/function/f_sourcesink.c > @@ -303,12 +303,6 @@ static inline struct usb_request *ss_alloc_ep_req(struct usb_ep *ep, int len) > return alloc_ep_req(ep, len, ss->buflen); > } > > -void free_ep_req(struct usb_ep *ep, struct usb_request *req) > -{ > - kfree(req->buf); > - usb_ep_free_request(ep, req); > -} > - > static void disable_ep(struct usb_composite_dev *cdev, struct usb_ep *ep) > { > int value; > diff --git a/drivers/usb/gadget/function/g_zero.h b/drivers/usb/gadget/function/g_zero.h > index 15f1809..5ed90b4 100644 > --- a/drivers/usb/gadget/function/g_zero.h > +++ b/drivers/usb/gadget/function/g_zero.h > @@ -59,7 +59,6 @@ void lb_modexit(void); > int lb_modinit(void); > > /* common utilities */ > -void free_ep_req(struct usb_ep *ep, struct usb_request *req); > void disable_endpoints(struct usb_composite_dev *cdev, > struct usb_ep *in, struct usb_ep *out, > struct usb_ep *iso_in, struct usb_ep *iso_out); > diff --git a/drivers/usb/gadget/u_f.c b/drivers/usb/gadget/u_f.c > index c6276f0..4bc7eea 100644 > --- a/drivers/usb/gadget/u_f.c > +++ b/drivers/usb/gadget/u_f.c > @@ -11,7 +11,6 @@ > * published by the Free Software Foundation. > */ > > -#include > #include "u_f.h" > > struct usb_request *alloc_ep_req(struct usb_ep *ep, int len, int default_len) > diff --git a/drivers/usb/gadget/u_f.h b/drivers/usb/gadget/u_f.h > index 1d5f0eb..4247cc0 100644 > --- a/drivers/usb/gadget/u_f.h > +++ b/drivers/usb/gadget/u_f.h > @@ -16,6 +16,8 @@ > #ifndef __U_F_H__ > #define __U_F_H__ > > +#include > + > /* Variable Length Array Macros **********************************************/ > #define vla_group(groupname) size_t groupname##__next = 0 > #define vla_group_size(groupname) groupname##__next > @@ -45,8 +47,12 @@ > struct usb_ep; > struct usb_request; > > +/* Requests allocated via alloc_ep_req() must be freed by free_ep_req(). */ > struct usb_request *alloc_ep_req(struct usb_ep *ep, int len, int default_len); > +static inline void free_ep_req(struct usb_ep *ep, struct usb_request *req) > +{ > + kfree(req->buf); > + usb_ep_free_request(ep, req); > +} > > #endif /* __U_F_H__ */ > - > - > -- 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/