aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Penkler <dpenkler@gmail.com>2016-02-18 04:03:00 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-20 23:21:53 -0500
commitf9cfabcecd0c46617d0f56388cb2f4bd90f4d5ca (patch)
treeb389f90f333db1d708abc55c11970adf11077f08
parent6edd87f589cf1cd4c93ee07b8f8c72a5af427b10 (diff)
usb: usbtmc: Fix disconnect/poll interaction
When the device is disconnected poll waiters were not being woken. Changes for v2: - add commit summary - add Fixes and Reported-by tags Fixes: eb6b92ecc0f9 ("Add support for receiving USBTMC USB488 SRQ notifications via poll/select") Reported-by: Oliver Neukum <oneukum@suse.com> Signed-off-by: Dave Penkler <dpenkler@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/class/usbtmc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/class/usbtmc.c b/drivers/usb/class/usbtmc.c
index 419c72e10464..917a55c4480d 100644
--- a/drivers/usb/class/usbtmc.c
+++ b/drivers/usb/class/usbtmc.c
@@ -1525,13 +1525,14 @@ static void usbtmc_disconnect(struct usb_interface *intf)
1525 dev_dbg(&intf->dev, "usbtmc_disconnect called\n"); 1525 dev_dbg(&intf->dev, "usbtmc_disconnect called\n");
1526 1526
1527 data = usb_get_intfdata(intf); 1527 data = usb_get_intfdata(intf);
1528 usbtmc_free_int(data);
1529 usb_deregister_dev(intf, &usbtmc_class); 1528 usb_deregister_dev(intf, &usbtmc_class);
1530 sysfs_remove_group(&intf->dev.kobj, &capability_attr_grp); 1529 sysfs_remove_group(&intf->dev.kobj, &capability_attr_grp);
1531 sysfs_remove_group(&intf->dev.kobj, &data_attr_grp); 1530 sysfs_remove_group(&intf->dev.kobj, &data_attr_grp);
1532 mutex_lock(&data->io_mutex); 1531 mutex_lock(&data->io_mutex);
1533 data->zombie = 1; 1532 data->zombie = 1;
1533 wake_up_all(&data->waitq);
1534 mutex_unlock(&data->io_mutex); 1534 mutex_unlock(&data->io_mutex);
1535 usbtmc_free_int(data);
1535 kref_put(&data->kref, usbtmc_delete); 1536 kref_put(&data->kref, usbtmc_delete);
1536} 1537}
1537 1538