diff options
| author | Greg Kroah-Hartman <[email protected]> | 2021-06-14 07:14:43 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2021-06-14 07:14:43 +0000 |
| commit | 99289bf1a76c0aea6ac0f77335b8c9bdca16aac7 (patch) | |
| tree | 69b9484abfd6014154b925fdc0733438ffdf923f /drivers/usb/cdns3/cdnsp-ring.c | |
| parent | vt: vt_kern.h, remove the repeated declaration (diff) | |
| parent | Linux 5.13-rc6 (diff) | |
| download | kernel-99289bf1a76c0aea6ac0f77335b8c9bdca16aac7.tar.gz kernel-99289bf1a76c0aea6ac0f77335b8c9bdca16aac7.zip | |
Merge tag 'v5.13-rc6' into tty-next
We want the tty fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'drivers/usb/cdns3/cdnsp-ring.c')
| -rw-r--r-- | drivers/usb/cdns3/cdnsp-ring.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/usb/cdns3/cdnsp-ring.c b/drivers/usb/cdns3/cdnsp-ring.c index 5f0513c96c04..68972746e363 100644 --- a/drivers/usb/cdns3/cdnsp-ring.c +++ b/drivers/usb/cdns3/cdnsp-ring.c @@ -1517,13 +1517,14 @@ irqreturn_t cdnsp_thread_irq_handler(int irq, void *data) { struct cdnsp_device *pdev = (struct cdnsp_device *)data; union cdnsp_trb *event_ring_deq; + unsigned long flags; int counter = 0; - spin_lock(&pdev->lock); + spin_lock_irqsave(&pdev->lock, flags); if (pdev->cdnsp_state & (CDNSP_STATE_HALTED | CDNSP_STATE_DYING)) { cdnsp_died(pdev); - spin_unlock(&pdev->lock); + spin_unlock_irqrestore(&pdev->lock, flags); return IRQ_HANDLED; } @@ -1539,7 +1540,7 @@ irqreturn_t cdnsp_thread_irq_handler(int irq, void *data) cdnsp_update_erst_dequeue(pdev, event_ring_deq, 1); - spin_unlock(&pdev->lock); + spin_unlock_irqrestore(&pdev->lock, flags); return IRQ_HANDLED; } |
