From: Andrzej Pietrasiewicz Date: Thu, 18 Apr 2013 12:43:26 +0000 (+0200) Subject: usb: gadget: zero: put function instances on unbind X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=abe7a4097dd0141d21d02e4bd949b377a0a75120;p=openwrt%2Fstaging%2Fblogic.git usb: gadget: zero: put function instances on unbind If function instances are not put on gadget's unbind, their implementation module's refcount is nonzero and it is impossible to unload them. Signed-off-by: Andrzej Pietrasiewicz Signed-off-by: Kyungmin Park Signed-off-by: Felipe Balbi --- diff --git a/drivers/usb/gadget/zero.c b/drivers/usb/gadget/zero.c index 685fa681cb65..2cd6262e8b71 100644 --- a/drivers/usb/gadget/zero.c +++ b/drivers/usb/gadget/zero.c @@ -368,8 +368,10 @@ static int zero_unbind(struct usb_composite_dev *cdev) del_timer_sync(&autoresume_timer); if (!IS_ERR_OR_NULL(func_ss)) usb_put_function(func_ss); + usb_put_function_instance(func_inst_ss); if (!IS_ERR_OR_NULL(func_lb)) usb_put_function(func_lb); + usb_put_function_instance(func_inst_lb); return 0; }