linux/drivers/usb/gadget/legacy
Thomas Gleixner c1d51dd505 usb: gadget: Use completion interface instead of open coding it
ep_io() uses a completion on stack and open codes the waiting with:

  wait_event_interruptible (done.wait, done.done);
and
  wait_event (done.wait, done.done);

This waits in non-exclusive mode for complete(), but there is no reason to
do so because the completion can only be waited for by the task itself and
complete() wakes exactly one exlusive waiter.

Replace the open coded implementation with the corresponding
wait_for_completion*() functions.

No functional change.

Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lkml.kernel.org/r/20200321113241.043380271@linutronix.de
2020-03-21 16:00:20 +01:00
..
acm_ms.c usb: gadget: Remove set but not used variable 'opts' in acm_ms_do_config 2019-10-22 10:39:01 +03:00
audio.c usb: Remove Blackfin references in USB support 2018-03-26 15:57:16 +02:00
cdc2.c usb: gadget: legacy: set max_speed to super-speed 2020-01-15 10:39:21 +01:00
dbgp.c USB: add SPDX identifiers to all remaining files in drivers/usb/ 2017-11-04 11:48:02 +01:00
ether.c USB: gadget: legacy: Remove redundant license text 2017-11-07 15:45:02 +01:00
g_ffs.c usb: gadget: legacy: set max_speed to super-speed 2020-01-15 10:39:21 +01:00
gmidi.c USB: gadget: legacy: Remove redundant license text 2017-11-07 15:45:02 +01:00
hid.c USB: gadget: legacy: Remove redundant license text 2017-11-07 15:45:02 +01:00
inode.c usb: gadget: Use completion interface instead of open coding it 2020-03-21 16:00:20 +01:00
Kconfig usb: gadget: move choice ... endchoice to legacy/Kconfig 2019-12-17 16:24:13 +01:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mass_storage.c usb: gadget: Remove set but not used variable 'opts' in msg_do_config 2019-10-22 10:39:04 +03:00
multi.c usb: gadget: legacy: set max_speed to super-speed 2020-01-15 10:39:21 +01:00
ncm.c usb: gadget: legacy: set max_speed to super-speed 2020-01-15 10:39:21 +01:00
nokia.c USB: gadget: legacy: Remove redundant license text 2017-11-07 15:45:02 +01:00
printer.c USB: gadget: legacy: Remove redundant license text 2017-11-07 15:45:02 +01:00
serial.c usb: gadget: legacy/serial: allow dynamic removal 2019-10-22 10:27:15 +03:00
tcm_usb_gadget.c usb: gadget: tcm: fix spelling mistake: "Manufactor" -> "Manufacturer" 2018-07-26 13:35:29 +03:00
webcam.c usb: gadget: uvc: Move trace parameter to function module 2018-07-26 13:33:48 +03:00
zero.c USB: gadget: legacy: Remove redundant license text 2017-11-07 15:45:02 +01:00