Commit d83c5a5a authored by Mathias Nyman's avatar Mathias Nyman Committed by Treehugger Robot
Browse files

UPSTREAM: xhci: split free interrupter into separate remove and free parts



The current function that both removes and frees an interrupter isn't
optimal when using several interrupters. The array of interrupters need
to be protected with a lock while removing interrupters, but the default
xhci spin lock can't be used while freeing the interrupters event ring
segment table as dma_free_coherent() should be called with IRQs enabled.

There is no need to free the interrupter under the lock, so split this
code into separate unlocked free part, and a lock protected remove part.

Signed-off-by: default avatarMathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20231019102924.2797346-17-mathias.nyman@linux.intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 264371591
Change-Id: I81db02694c93bbf20212f3d4d6385d31fc857d03
(cherry picked from commit 47f503cf)
Signed-off-by: default avatarWesley Cheng <quic_wcheng@quicinc.com>
parent 5dbcfdaf
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment