linux_dsm_epyc7002/include/linux/usb
Thomas Pugliese 471e42ad14 usb: wusbcore: fix deadlock in wusbhc_gtk_rekey
When multiple wireless USB devices are connected and one of the devices
disconnects, the host will distribute a new group key to the remaining
devicese using wusbhc_gtk_rekey.  wusbhc_gtk_rekey takes the
wusbhc->mutex and holds it while it submits a URB to set the new key.
This causes a deadlock in wa_urb_enqueue when it calls a device lookup
helper function that takes the same lock.

This patch changes wusbhc_gtk_rekey to submit a work item to set the GTK
so that the URB is submitted without holding wusbhc->mutex.

Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-12-02 15:21:04 -08:00
..
association.h
atmel_usba_udc.h
audio-v2.h
audio.h
c67x00.h
cdc_ncm.h net: cdc_ncm: Export cdc_ncm_{tx, rx}_fixup functions for re-use 2013-11-05 15:21:25 -05:00
cdc-wdm.h
ch9.h
chipidea.h
composite.h
ehci_def.h
ehci_pdriver.h
ezusb.h
functionfs.h
g_hid.h
gadget_configfs.h
gadget.h
gpio_vbus.h
hcd.h USB: add a private-data pointer to struct usb_tt 2013-10-11 16:45:43 -07:00
input.h
iowarrior.h
irda.h
isp116x.h
isp1301.h
isp1362.h
isp1760.h
m66592.h
msm_hsusb_hw.h
msm_hsusb.h
musb-omap.h
musb-ux500.h
musb.h usb: musb: omap2430: Don't use omap_get_control_dev() 2013-10-03 15:47:31 -07:00
net2280.h
of.h
ohci_pdriver.h
omap_control_usb.h usb: phy: omap: get rid of omap_get_control_dev() 2013-10-03 15:47:31 -07:00
omap_usb.h
otg.h
phy_companion.h
phy.h
quirks.h
r8a66597.h
renesas_usbhs.h
rndis_host.h
samsung_usb_phy.h
serial.h USB: serial: export usb_serial_generic_write_start 2013-10-11 17:00:26 -07:00
sl811.h
storage.h
tegra_usb_phy.h
tilegx.h
uas.h
ulpi.h
usb_phy_gen_xceiv.h usb: patches for v3.13 2013-10-24 16:18:40 +01:00
usbnet.h
wusb-wa.h usb: wusbcore: preserve endianness of cached descriptors 2013-10-19 05:19:21 -07:00
wusb.h usb: wusbcore: fix deadlock in wusbhc_gtk_rekey 2013-12-02 15:21:04 -08:00