diff options
| author | Udipto Goswami <[email protected]> | 2023-01-24 09:11:49 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2023-01-24 17:19:39 +0000 |
| commit | 921deb9da15851425ccbb6ee409dc2fd8fbdfe6b (patch) | |
| tree | b66637def42bf42f3f4b659df3cf41f33b1f1a6b /drivers/fpga/fpga-bridge.c | |
| parent | usb: dwc3: qcom: enable vbus override when in OTG dr-mode (diff) | |
| download | kernel-921deb9da15851425ccbb6ee409dc2fd8fbdfe6b.tar.gz kernel-921deb9da15851425ccbb6ee409dc2fd8fbdfe6b.zip | |
usb: gadget: f_fs: Fix unbalanced spinlock in __ffs_ep0_queue_wait
__ffs_ep0_queue_wait executes holding the spinlock of &ffs->ev.waitq.lock
and unlocks it after the assignments to usb_request are done.
However in the code if the request is already NULL we bail out returning
-EINVAL but never unlocked the spinlock.
Fix this by adding spin_unlock_irq &ffs->ev.waitq.lock before returning.
Fixes: 6a19da111057 ("usb: gadget: f_fs: Prevent race during ffs_ep0_queue_wait")
Reviewed-by: John Keeping <[email protected]>
Signed-off-by: Udipto Goswami <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'drivers/fpga/fpga-bridge.c')
0 files changed, 0 insertions, 0 deletions
