From: Mauro Carvalho Chehab <mchehab@kernel.org>
To: linux-aspeed@lists.ozlabs.org
Subject: [PATCH v2] media: aspeed: move err-handling together to the bottom
Date: Tue, 14 Dec 2021 15:53:00 +0100 [thread overview]
Message-ID: <20211214155300.0132946e@coco.lan> (raw)
In-Reply-To: <20211206004811.1118-1-jammy_huang@aspeedtech.com>
Em Mon, 6 Dec 2021 08:48:11 +0800
Jammy Huang <jammy_huang@aspeedtech.com> escreveu:
> refine aspeed_video_setup_video() flow.
Why? It makes no difference where the error handling code is. Let's
keep it as preferred by the driver's author ;-)
Regards,
Mauro
>
> Signed-off-by: Jammy Huang <jammy_huang@aspeedtech.com>
> ---
> v2:
> - remove change-id in comment
> ---
> drivers/media/platform/aspeed-video.c | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/media/platform/aspeed-video.c b/drivers/media/platform/aspeed-video.c
> index fea5e4d0927e..f5c40d6b4ece 100644
> --- a/drivers/media/platform/aspeed-video.c
> +++ b/drivers/media/platform/aspeed-video.c
> @@ -1641,11 +1641,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = video->ctrl_handler.error;
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init controls: %d\n", rc);
> - return rc;
> + goto err_ctrl_init;
> }
>
> v4l2_dev->ctrl_handler = &video->ctrl_handler;
> @@ -1663,11 +1660,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = vb2_queue_init(vbq);
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init vb2 queue\n");
> - return rc;
> + goto err_vb2_init;
> }
>
> vdev->queue = vbq;
> @@ -1685,15 +1679,19 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
> video_set_drvdata(vdev, video);
> rc = video_register_device(vdev, VFL_TYPE_GRABBER, 0);
> if (rc) {
> - vb2_queue_release(vbq);
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to register video device\n");
> - return rc;
> + goto err_video_reg;
> }
>
> return 0;
> +
> +err_video_reg:
> + vb2_queue_release(vbq);
> +err_vb2_init:
> +err_ctrl_init:
> + v4l2_ctrl_handler_free(&video->ctrl_handler);
> + v4l2_device_unregister(v4l2_dev);
> + return rc;
> }
>
> static int aspeed_video_init(struct aspeed_video *video)
Thanks,
Mauro
WARNING: multiple messages have this Message-ID (diff)
From: Mauro Carvalho Chehab <mchehab@kernel.org>
To: Jammy Huang <jammy_huang@aspeedtech.com>
Cc: linux-aspeed@lists.ozlabs.org, andrew@aj.id.au,
gregkh@linuxfoundation.org, openbmc@lists.ozlabs.org,
eajames@linux.ibm.com, linux-kernel@vger.kernel.org,
laurent.pinchart@ideasonboard.com, sakari.ailus@linux.intel.com,
hverkuil-cisco@xs4all.nl, linux-media@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2] media: aspeed: move err-handling together to the bottom
Date: Tue, 14 Dec 2021 15:53:00 +0100 [thread overview]
Message-ID: <20211214155300.0132946e@coco.lan> (raw)
In-Reply-To: <20211206004811.1118-1-jammy_huang@aspeedtech.com>
Em Mon, 6 Dec 2021 08:48:11 +0800
Jammy Huang <jammy_huang@aspeedtech.com> escreveu:
> refine aspeed_video_setup_video() flow.
Why? It makes no difference where the error handling code is. Let's
keep it as preferred by the driver's author ;-)
Regards,
Mauro
>
> Signed-off-by: Jammy Huang <jammy_huang@aspeedtech.com>
> ---
> v2:
> - remove change-id in comment
> ---
> drivers/media/platform/aspeed-video.c | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/media/platform/aspeed-video.c b/drivers/media/platform/aspeed-video.c
> index fea5e4d0927e..f5c40d6b4ece 100644
> --- a/drivers/media/platform/aspeed-video.c
> +++ b/drivers/media/platform/aspeed-video.c
> @@ -1641,11 +1641,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = video->ctrl_handler.error;
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init controls: %d\n", rc);
> - return rc;
> + goto err_ctrl_init;
> }
>
> v4l2_dev->ctrl_handler = &video->ctrl_handler;
> @@ -1663,11 +1660,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = vb2_queue_init(vbq);
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init vb2 queue\n");
> - return rc;
> + goto err_vb2_init;
> }
>
> vdev->queue = vbq;
> @@ -1685,15 +1679,19 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
> video_set_drvdata(vdev, video);
> rc = video_register_device(vdev, VFL_TYPE_GRABBER, 0);
> if (rc) {
> - vb2_queue_release(vbq);
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to register video device\n");
> - return rc;
> + goto err_video_reg;
> }
>
> return 0;
> +
> +err_video_reg:
> + vb2_queue_release(vbq);
> +err_vb2_init:
> +err_ctrl_init:
> + v4l2_ctrl_handler_free(&video->ctrl_handler);
> + v4l2_device_unregister(v4l2_dev);
> + return rc;
> }
>
> static int aspeed_video_init(struct aspeed_video *video)
Thanks,
Mauro
WARNING: multiple messages have this Message-ID (diff)
From: Mauro Carvalho Chehab <mchehab@kernel.org>
To: Jammy Huang <jammy_huang@aspeedtech.com>
Cc: <hverkuil-cisco@xs4all.nl>, <sakari.ailus@linux.intel.com>,
<gregkh@linuxfoundation.org>, <laurent.pinchart@ideasonboard.com>,
<eajames@linux.ibm.com>, <joel@jms.id.au>, <andrew@aj.id.au>,
<linux-media@vger.kernel.org>, <openbmc@lists.ozlabs.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-aspeed@lists.ozlabs.org>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2] media: aspeed: move err-handling together to the bottom
Date: Tue, 14 Dec 2021 15:53:00 +0100 [thread overview]
Message-ID: <20211214155300.0132946e@coco.lan> (raw)
In-Reply-To: <20211206004811.1118-1-jammy_huang@aspeedtech.com>
Em Mon, 6 Dec 2021 08:48:11 +0800
Jammy Huang <jammy_huang@aspeedtech.com> escreveu:
> refine aspeed_video_setup_video() flow.
Why? It makes no difference where the error handling code is. Let's
keep it as preferred by the driver's author ;-)
Regards,
Mauro
>
> Signed-off-by: Jammy Huang <jammy_huang@aspeedtech.com>
> ---
> v2:
> - remove change-id in comment
> ---
> drivers/media/platform/aspeed-video.c | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/media/platform/aspeed-video.c b/drivers/media/platform/aspeed-video.c
> index fea5e4d0927e..f5c40d6b4ece 100644
> --- a/drivers/media/platform/aspeed-video.c
> +++ b/drivers/media/platform/aspeed-video.c
> @@ -1641,11 +1641,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = video->ctrl_handler.error;
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init controls: %d\n", rc);
> - return rc;
> + goto err_ctrl_init;
> }
>
> v4l2_dev->ctrl_handler = &video->ctrl_handler;
> @@ -1663,11 +1660,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = vb2_queue_init(vbq);
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init vb2 queue\n");
> - return rc;
> + goto err_vb2_init;
> }
>
> vdev->queue = vbq;
> @@ -1685,15 +1679,19 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
> video_set_drvdata(vdev, video);
> rc = video_register_device(vdev, VFL_TYPE_GRABBER, 0);
> if (rc) {
> - vb2_queue_release(vbq);
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to register video device\n");
> - return rc;
> + goto err_video_reg;
> }
>
> return 0;
> +
> +err_video_reg:
> + vb2_queue_release(vbq);
> +err_vb2_init:
> +err_ctrl_init:
> + v4l2_ctrl_handler_free(&video->ctrl_handler);
> + v4l2_device_unregister(v4l2_dev);
> + return rc;
> }
>
> static int aspeed_video_init(struct aspeed_video *video)
Thanks,
Mauro
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Mauro Carvalho Chehab <mchehab@kernel.org>
To: Jammy Huang <jammy_huang@aspeedtech.com>
Cc: <hverkuil-cisco@xs4all.nl>, <sakari.ailus@linux.intel.com>,
<gregkh@linuxfoundation.org>, <laurent.pinchart@ideasonboard.com>,
<eajames@linux.ibm.com>, <joel@jms.id.au>, <andrew@aj.id.au>,
<linux-media@vger.kernel.org>, <openbmc@lists.ozlabs.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-aspeed@lists.ozlabs.org>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2] media: aspeed: move err-handling together to the bottom
Date: Tue, 14 Dec 2021 15:53:00 +0100 [thread overview]
Message-ID: <20211214155300.0132946e@coco.lan> (raw)
In-Reply-To: <20211206004811.1118-1-jammy_huang@aspeedtech.com>
Em Mon, 6 Dec 2021 08:48:11 +0800
Jammy Huang <jammy_huang@aspeedtech.com> escreveu:
> refine aspeed_video_setup_video() flow.
Why? It makes no difference where the error handling code is. Let's
keep it as preferred by the driver's author ;-)
Regards,
Mauro
>
> Signed-off-by: Jammy Huang <jammy_huang@aspeedtech.com>
> ---
> v2:
> - remove change-id in comment
> ---
> drivers/media/platform/aspeed-video.c | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/media/platform/aspeed-video.c b/drivers/media/platform/aspeed-video.c
> index fea5e4d0927e..f5c40d6b4ece 100644
> --- a/drivers/media/platform/aspeed-video.c
> +++ b/drivers/media/platform/aspeed-video.c
> @@ -1641,11 +1641,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = video->ctrl_handler.error;
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init controls: %d\n", rc);
> - return rc;
> + goto err_ctrl_init;
> }
>
> v4l2_dev->ctrl_handler = &video->ctrl_handler;
> @@ -1663,11 +1660,8 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
>
> rc = vb2_queue_init(vbq);
> if (rc) {
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to init vb2 queue\n");
> - return rc;
> + goto err_vb2_init;
> }
>
> vdev->queue = vbq;
> @@ -1685,15 +1679,19 @@ static int aspeed_video_setup_video(struct aspeed_video *video)
> video_set_drvdata(vdev, video);
> rc = video_register_device(vdev, VFL_TYPE_GRABBER, 0);
> if (rc) {
> - vb2_queue_release(vbq);
> - v4l2_ctrl_handler_free(&video->ctrl_handler);
> - v4l2_device_unregister(v4l2_dev);
> -
> dev_err(video->dev, "Failed to register video device\n");
> - return rc;
> + goto err_video_reg;
> }
>
> return 0;
> +
> +err_video_reg:
> + vb2_queue_release(vbq);
> +err_vb2_init:
> +err_ctrl_init:
> + v4l2_ctrl_handler_free(&video->ctrl_handler);
> + v4l2_device_unregister(v4l2_dev);
> + return rc;
> }
>
> static int aspeed_video_init(struct aspeed_video *video)
Thanks,
Mauro
next prev parent reply other threads:[~2021-12-14 14:53 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-06 0:48 [PATCH v2] media: aspeed: move err-handling together to the bottom Jammy Huang
2021-12-06 0:48 ` Jammy Huang
2021-12-06 0:48 ` Jammy Huang
2021-12-14 14:53 ` Mauro Carvalho Chehab [this message]
2021-12-14 14:53 ` Mauro Carvalho Chehab
2021-12-14 14:53 ` Mauro Carvalho Chehab
2021-12-14 14:53 ` Mauro Carvalho Chehab
2021-12-14 18:32 ` Sakari Ailus
2021-12-14 18:32 ` Sakari Ailus
2021-12-14 18:32 ` Sakari Ailus
2021-12-14 18:32 ` Sakari Ailus
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
2021-12-15 1:59 ` Jammy Huang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211214155300.0132946e@coco.lan \
--to=mchehab@kernel.org \
--cc=linux-aspeed@lists.ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.