linux_dsm_epyc7002/drivers/usb/host
Mathias Nyman bd82873f23 xhci: make sure interrupts are restored to correct state
spin_unlock_irqrestore() might be called with stale flags after
reading port status, possibly restoring interrupts to a incorrect
state.

If a usb2 port just finished resuming while the port status is read
the spin lock will be temporary released and re-acquired in a separate
function. The flags parameter is passed as value instead of a pointer,
not updating flags properly before the final spin_unlock_irqrestore()
is called.

Cc: <stable@vger.kernel.org> # v3.12+
Fixes: 8b3d45705e ("usb: Fix xHCI host issues on remote wakeup.")
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20191211142007.8847-7-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-11 15:32:19 +01:00
..
bcma-hcd.c
ehci-atmel.c
ehci-dbg.c
ehci-exynos.c
ehci-fsl.c
ehci-fsl.h
ehci-grlib.c
ehci-hcd.c
ehci-hub.c
ehci-mem.c
ehci-mv.c
ehci-mxc.c
ehci-npcm7xx.c
ehci-omap.c
ehci-orion.c
ehci-pci.c
ehci-platform.c
ehci-pmcmsp.c
ehci-ppc-of.c
ehci-ps3.c
ehci-q.c
ehci-sched.c
ehci-sh.c
ehci-spear.c
ehci-st.c
ehci-sysfs.c
ehci-tegra.c
ehci-timer.c
ehci-xilinx-of.c
ehci.h
fhci-dbg.c
fhci-hcd.c
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c
fhci-tds.c
fhci.h
fotg210-hcd.c
fotg210.h
fsl-mph-dr-of.c
imx21-dbg.c
imx21-hcd.c
imx21-hcd.h
isp116x-hcd.c
isp116x.h
isp1362-hcd.c
isp1362.h
Kconfig
Makefile
max3421-hcd.c
ohci-at91.c
ohci-da8xx.c
ohci-dbg.c
ohci-exynos.c
ohci-hcd.c
ohci-hub.c
ohci-mem.c
ohci-nxp.c
ohci-omap.c
ohci-pci.c
ohci-platform.c
ohci-ppc-of.c
ohci-ps3.c
ohci-pxa27x.c
ohci-q.c
ohci-s3c2410.c
ohci-sa1111.c
ohci-sm501.c
ohci-spear.c
ohci-st.c
ohci-tmio.c
ohci.h
oxu210hp-hcd.c
pci-quirks.c
pci-quirks.h
r8a66597-hcd.c
r8a66597.h
sl811_cs.c
sl811-hcd.c
sl811.h
ssb-hcd.c
u132-hcd.c
uhci-debug.c
uhci-grlib.c
uhci-hcd.c
uhci-hcd.h
uhci-hub.c
uhci-pci.c
uhci-platform.c
uhci-q.c
xhci-dbg.c
xhci-dbgcap.c
xhci-dbgcap.h
xhci-dbgtty.c
xhci-debugfs.c
xhci-debugfs.h
xhci-ext-caps.c
xhci-ext-caps.h
xhci-histb.c
xhci-hub.c xhci: make sure interrupts are restored to correct state 2019-12-11 15:32:19 +01:00
xhci-mem.c xhci: Fix memory leak in xhci_add_in_port() 2019-12-11 15:32:16 +01:00
xhci-mtk-sch.c
xhci-mtk.c
xhci-mtk.h
xhci-mvebu.c
xhci-mvebu.h
xhci-pci.c usb: xhci: only set D3hot for pci device 2019-12-11 15:32:18 +01:00
xhci-plat.c
xhci-plat.h
xhci-rcar.c
xhci-rcar.h
xhci-ring.c xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default behaviour. 2019-12-11 15:32:19 +01:00
xhci-tegra.c
xhci-trace.c
xhci-trace.h
xhci.c xhci: Increase STS_HALT timeout in xhci_suspend() 2019-12-11 15:32:18 +01:00
xhci.h usb: xhci: only set D3hot for pci device 2019-12-11 15:32:18 +01:00