aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/input/yealink.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/usb/input/yealink.c b/drivers/usb/input/yealink.c
index 575a4e672e96..7b45fd3de911 100644
--- a/drivers/usb/input/yealink.c
+++ b/drivers/usb/input/yealink.c
@@ -810,12 +810,9 @@ static int usb_cleanup(struct yealink_dev *yld, int err)
810 if (yld == NULL) 810 if (yld == NULL)
811 return err; 811 return err;
812 812
813 if (yld->urb_irq) { 813 usb_kill_urb(yld->urb_irq); /* parameter validation in core/urb */
814 usb_kill_urb(yld->urb_irq); 814 usb_kill_urb(yld->urb_ctl); /* parameter validation in core/urb */
815 usb_free_urb(yld->urb_irq); 815
816 }
817 if (yld->urb_ctl)
818 usb_free_urb(yld->urb_ctl);
819 if (yld->idev) { 816 if (yld->idev) {
820 if (err) 817 if (err)
821 input_free_device(yld->idev); 818 input_free_device(yld->idev);
@@ -831,6 +828,9 @@ static int usb_cleanup(struct yealink_dev *yld, int err)
831 if (yld->irq_data) 828 if (yld->irq_data)
832 usb_buffer_free(yld->udev, USB_PKT_LEN, 829 usb_buffer_free(yld->udev, USB_PKT_LEN,
833 yld->irq_data, yld->irq_dma); 830 yld->irq_data, yld->irq_dma);
831
832 usb_free_urb(yld->urb_irq); /* parameter validation in core/urb */
833 usb_free_urb(yld->urb_ctl); /* parameter validation in core/urb */
834 kfree(yld); 834 kfree(yld);
835 return err; 835 return err;
836} 836}