coreboot-kgpe-d16/payloads/libpayload/drivers/usb
Mathias Krause 59c020ab15 libpayload: fix use-after-free in usb_exit()
The controller's shutdown function free()s the controller structure so
we shouldn't access it any more after calling shutdown.

As all controllers detach themself, i.e. unchain themself from usb_hcs,
just keep iterating over usb_hcs until it's NULL.

Change-Id: Ie85caba0f685494c3fe04c550a5a14bc4158a94e
Signed-off-by: Mathias Krause <minipli@googlemail.com>
Reviewed-on: http://review.coreboot.org/2900
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins)
Reviewed-by: Anton Kochkov <anton.kochkov@gmail.com>
2013-03-25 15:34:53 +01:00
..
TODO Since some people disapprove of white space cleanups mixed in regular commits 2010-04-27 06:56:47 +00:00
ehci.c libpayload: EHCI - detach controller in ehci_shutdown() 2013-03-25 13:18:41 +01:00
ehci.h Add an EHCI driver to libpayload's USB stack. 2010-09-25 17:01:13 +00:00
ehci_private.h [PATCH] libpayload: Implement EHCI reset function 2012-11-09 20:10:05 +01:00
ehci_rh.c libpayload: Use usb_debug() to show USB messages 2012-12-18 19:59:22 +01:00
ohci.c libpayload: Put dump_td/dump_ed in ohci.c behind #ifdef USB_DEBUG 2013-03-14 04:52:38 +01:00
ohci.h Add support for OHCI controllers and prelimiary support for xHCI (USB3) controllers. 2010-08-13 09:18:58 +00:00
ohci_private.h libpayload: Add support for interrupt transfers in OHCI 2012-06-21 11:59:11 +02:00
ohci_rh.c libpayload: Rework connection state detection for OHCI 2012-11-24 08:46:34 +01:00
quirks.c libpayload: Turn the "debug" #define into the usb_debug static inline function. 2012-11-07 18:38:37 +01:00
uhci.c libpayload: improved UHCI TD debugging 2012-12-19 15:19:34 +01:00
uhci.h Avoid using the name "pid_t", which is used on unixoid systems. 2010-06-07 13:58:17 +00:00
uhci_private.h libpayload: Remove bitfield use from UHCI data structures 2012-01-10 00:02:54 +01:00
uhci_rh.c libpayload: Turn the "debug" #define into the usb_debug static inline function. 2012-11-07 18:38:37 +01:00
usb.c libpayload: fix use-after-free in usb_exit() 2013-03-25 15:34:53 +01:00
usb_dev.c Fix the USB code to find the headers after they were moved. 2008-09-11 17:29:00 +00:00
usbhid.c libpayload: Make keycode constants available outside of curses.h. 2013-03-18 20:45:48 +01:00
usbhub.c libpayload: Detach devices behind removed USB hubs 2012-11-23 18:18:31 +01:00
usbinit.c libpayload: Correct a constant used for scanning for USB controllers. 2013-02-26 07:39:06 +01:00
usbmsc.c libpayload: In the USBMSC read_capacity function, make buf an array of u32. 2013-03-12 23:56:16 +01:00
xhci.c libpayload: Use usb_debug() to show USB messages 2012-12-18 19:59:22 +01:00
xhci.h Add support for OHCI controllers and prelimiary support for xHCI (USB3) controllers. 2010-08-13 09:18:58 +00:00
xhci_private.h Add support for OHCI controllers and prelimiary support for xHCI (USB3) controllers. 2010-08-13 09:18:58 +00:00
xhci_rh.c libpayload: Turn the "debug" #define into the usb_debug static inline function. 2012-11-07 18:38:37 +01:00