summaryrefslogtreecommitdiff
path: root/drivers/tty/rocket.c
diff options
context:
space:
mode:
authorThomas Pugliese <thomas.pugliese@gmail.com>2014-02-28 14:31:57 -0600
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-02-28 16:13:09 -0800
commit5da43afc2b73795e82c4bc3e53a4a177a02637d0 (patch)
tree049941c751b72206569d778bf468336599f83cd8 /drivers/tty/rocket.c
parentacfadcea2adaa52048c6b3c8a3c75105a5540707 (diff)
downloadlinux-5da43afc2b73795e82c4bc3e53a4a177a02637d0.tar.gz
linux-5da43afc2b73795e82c4bc3e53a4a177a02637d0.tar.xz
usb: wusbcore: prevent urb dequeue and giveback race
This patch takes a reference to the wa_xfer object in wa_urb_dequeue to prevent the urb giveback code from completing the xfer and freeing it while wa_urb_dequeue is executing. It also checks for done at the start to avoid a double completion scenario. Adding the check for done in urb_dequeue means that any other place where a submitted transfer segment is marked as done must complete the transfer if it is done. __wa_xfer_delayed_run was not checking this case so that check was added as well. Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/rocket.c')
0 files changed, 0 insertions, 0 deletions