xhci: Fix NULL pointer dereference with xhci_irq() for shared_hcd
Commit ("fe190ed0 xhci: Do not halt the host until both HCD
have disconnected their devices.") sets xhci->shared_hcd to NULL
without stopping xhci host. This results into race condition
where shared_hcd (super speed roothub) related interrupts are
being handled with xhci_irq() and encountering NULL pointer
deference while trying to access xhci->shared_hcd. It also
creates memory leak as usb_put_hcd() API won't be able to call
hcd_release() from xhci_plat_remove() API. Fix these issues by
not setting xhci->shared_hcd with xhci_stop().
Change-Id: I4f6179acf02d44ff8c81566611257c121a8bf28e
Signed-off-by:
Mayank Rana <mrana@codeaurora.org>
Loading
Please register or sign in to comment