usb: gadget: hid: fix error code in do_config()

[ Upstream commit 68e7c510fdf4f6167404609da52e1979165649f6 ]

Return an error code if usb_get_function() fails.  Don't return success.

Fixes: 4bc8a33f2407 ("usb: gadget: hid: convert to new interface of f_hid")
Acked-by: Felipe Balbi <balbi@kernel.org>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Link: https://lore.kernel.org/r/20211011123739.GC15188@kili
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Dan Carpenter 2021-10-11 15:37:39 +03:00 committed by Greg Kroah-Hartman
parent dff3c2949b
commit 6971cfba69

View File

@ -103,8 +103,10 @@ static int do_config(struct usb_configuration *c)
list_for_each_entry(e, &hidg_func_list, node) {
e->f = usb_get_function(e->fi);
if (IS_ERR(e->f))
if (IS_ERR(e->f)) {
status = PTR_ERR(e->f);
goto put;
}
status = usb_add_function(c, e->f);
if (status < 0) {
usb_put_function(e->f);