Patch "usb: gadget: define free_ep_req as universal function" has been added to the 4.4-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
usb: gadget: define free_ep_req as universal function
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
usb-gadget-define-free_ep_req-as-universal-function.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
079fe5a6da616891cca1a26e803e1df2a87e9ae5Mon Sep 17 00:00:00 2001
From: "Felipe F. Tonello" <[email protected]>
Date: Tue, 10 Nov 2015 17:52:05 +0000
Subject: usb: gadget: define free_ep_req as universal function
From: Felipe F. Tonello <[email protected]>
commit 079fe5a6da616891cca1a26e803e1df2a87e9ae5 upstream.
This function is shared between gadget functions, so this avoid unnecessary duplicated code and potentially avoid memory leaks.
--- 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(-)
drivers/usb/gadget/function/f_midi.c +0 -6
@@ -201,12 +201,6 @@ static inline struct usb_request *midi_areturn 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 };
drivers/usb/gadget/function/f_sourcesink.c +0 -6
@@ -303,12 +303,6 @@ static inline struct usb_request *ss_allreturn 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;
drivers/usb/gadget/function/g_zero.h +0 -1
@@ -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);
drivers/usb/gadget/u_f.c +0 -1
@@ -11,7 +11,6 @@* published by the Free Software Foundation. */ -#include <linux/usb/gadget.h> #include "u_f.h" struct usb_request *alloc_ep_req (struct usb_ep *ep,int len,int default_len)
drivers/usb/gadget/u_f.h +8 -2
@@ -16,6 +16,8 @@#ifndef __U_F_H__#define __U_F_H__ +#include <linux/usb/gadget.h> +/* 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__ */ - -
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/usb-gadget-change-len-to-size_t-on-alloc_ep_req.patch queue-4.4/usb-gadget-define-free_ep_req-as-universal-function.patch queue-4.4/usb-gadget-fix-usb_ep_align_maybe-endianness-and-new-usb_ep_align.patch queue-4.4/usb-gadget-align-buffer-size-when-allocating-for-out-endpoint.patch