linux/drivers/usb/gadget
Lars-Peter Clausen 0763ce1170 usb: gadget: f_fs: Fix use-after-free
[ Upstream commit 38740a5b87 ]

When using asynchronous read or write operations on the USB endpoints the
issuer of the IO request is notified by calling the ki_complete() callback
of the submitted kiocb when the URB has been completed.

Calling this ki_complete() callback will free kiocb. Make sure that the
structure is no longer accessed beyond that point, otherwise undefined
behaviour might occur.

Fixes: 2e4c7553cd ("usb: gadget: f_fs: add aio support")
Cc: <stable@vger.kernel.org> # v3.15+
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
History 2016-05-10 12:17:31 -04:00
..
function usb: gadget: f_fs: Fix use-after-free 2016-05-10 12:17:31 -04:00
legacy usb: gadget: g_ffs: Fix counting of missing_functions 2015-05-26 10:15:08 -05:00
udc usb: gadget: pxa27x: fix suspend callback 2016-01-22 20:54:10 -08:00
composite.c usb: gadget: composite: Fix NULL pointer dereference 2015-08-03 09:29:05 -07:00
config.c usb: gadget: always update HS/SS descriptors and create a copy of them 2012-10-31 15:09:44 +02:00
configfs.c usb: gadget: configfs: Fix interfaces array NULL-termination 2015-04-27 14:44:04 -05:00
configfs.h usb: gadget: OS descriptors: provide interface directory names 2014-06-19 10:06:48 -05:00
epautoconf.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
functions.c usb: gadget: add a forward pointer from usb_function to its "instance" 2013-01-21 20:52:46 +02:00
Kconfig usb: gadget: f_printer: fix dependencies 2015-03-24 11:35:21 -05:00
Makefile usb: gadget: use $(srctree) instead of $(PWD) for includes 2014-08-29 15:53:46 -05:00
u_f.c usb: gadget: only GPL drivers in the gadget and phy framework 2014-04-21 14:07:12 -05:00
u_f.h usb: gadget: FunctionFS: share VLA macros with all usb gadget files 2014-05-14 09:37:27 -05:00
u_os_desc.h usb: gadget: u_os_desc: helper functions for accessing ext prop buffer 2014-07-10 08:36:51 -05:00
usbstring.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00