回复: [PATCH] usb: gadget: uvc: Fix the wrong v4l2_device_unregister call

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Cc: Alan Stern

________________________________________
发件人: qiang.zhang@xxxxxxxxxxxxx <qiang.zhang@xxxxxxxxxxxxx>
发送时间: 2020年9月27日 16:01
收件人: laurent.pinchart@xxxxxxxxxxxxxxxx; balbi@xxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx
抄送: linux-usb@xxxxxxxxxxxxxxx
主题: [PATCH] usb: gadget: uvc: Fix the wrong v4l2_device_unregister call

From: Zqiang <qiang.zhang@xxxxxxxxxxxxx>

If an error occurred before calling the 'v4l2_device_register' func,
and then goto error, but no need to call 'v4l2_device_unregister'
func.

Signed-off-by: Zqiang <qiang.zhang@xxxxxxxxxxxxx>
---
 drivers/usb/gadget/function/f_uvc.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/gadget/function/f_uvc.c b/drivers/usb/gadget/function/f_uvc.c
index 0b9712616455..44b4352a2676 100644
--- a/drivers/usb/gadget/function/f_uvc.c
+++ b/drivers/usb/gadget/function/f_uvc.c
@@ -740,20 +740,20 @@ uvc_function_bind(struct usb_configuration *c, struct usb_function *f)
        /* Initialise video. */
        ret = uvcg_video_init(&uvc->video, uvc);
        if (ret < 0)
-               goto error;
+               goto v4l2_error;

        /* Register a V4L2 device. */
        ret = uvc_register_video(uvc);
        if (ret < 0) {
                uvcg_err(f, "failed to register video device\n");
-               goto error;
+               goto v4l2_error;
        }

        return 0;

-error:
+v4l2_error:
        v4l2_device_unregister(&uvc->v4l2_dev);
-
+error:
        if (uvc->control_req)
                usb_ep_free_request(cdev->gadget->ep0, uvc->control_req);
        kfree(uvc->control_buf);
--
2.17.1





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux