summaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/usb-serial.c
diff options
context:
space:
mode:
authorPete Zaitcev <zaitcev@redhat.com>2006-05-24 11:04:04 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2006-06-21 15:04:14 -0700
commit2f8ad9a1b91bc6856860a2fea8b07e0c82c0ad0a (patch)
tree8ee7eba6bfd0c955dfcd455e32e305466f53f829 /drivers/usb/serial/usb-serial.c
parentba47f66bd9fc451e9ce88f291e057b2f4910d01c (diff)
[PATCH] USB: rmmod pl2303 after -28
Wait for the scheduled work to finish before freeing memory, prevent oops. http://bugzilla.kernel.org/show_bug.cgi?id=6596 Signed-off-by: Pete Zaitcev <zaitcev@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/serial/usb-serial.c')
-rw-r--r--drivers/usb/serial/usb-serial.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c
index 7a1cc1b0497..cbca3402d6c 100644
--- a/drivers/usb/serial/usb-serial.c
+++ b/drivers/usb/serial/usb-serial.c
@@ -162,6 +162,8 @@ static void destroy_serial(struct kref *kref)
}
}
+ flush_scheduled_work(); /* port->work */
+
usb_put_dev(serial->dev);
/* free up any memory that we allocated */