USB: fix race leading to use after free in io_edgeport
authorOliver Neukum <oneukum@suse.de>
Wed, 13 Jun 2007 16:50:41 +0000 (18:50 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 26 Jun 2007 06:38:06 +0000 (23:38 -0700)
commit74ac07e8b8209ba9429fa1a9afc07aa5ecef5af8
tree113b8f6253ac3ece264c482ce16880e3ec6b2244
parent5afeb104e7901168b21aad0437fb51dc620dfdd3
USB: fix race leading to use after free in io_edgeport

usb_unlink_urb() is asynchronous, therefore an URB's buffer may not
be freed without waiting for the completion handler. This patch switches
to usb_kill_urb(), which is synchronous.
Thanks to Alan for making me look at the remaining users of usb_unlink_urb()

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Al Borchers <alborchers@steinerpoint.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/serial/io_edgeport.c