drivers/media/platform/raspberrypi/rp1-cfe/cfe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
media_entity_remote_source_pad_unique() returns either a valid struct
media_pad pointer or an error pointer (ERR_PTR(-ENOTUNIQ) or
ERR_PTR(-ENOLINK)); it never returns NULL. The current NULL check
therefore never triggers, and the "pad not connected" error path is
unreachable.
Replace the NULL check with an IS_ERR() check so the validation
actually detects malformed media graphs.
Signed-off-by: Ingyu Jang <ingyujang25@korea.ac.kr>
---
drivers/media/platform/raspberrypi/rp1-cfe/cfe.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c b/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
index 8375ed3e97b9f..91e9fa0341e06 100644
--- a/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
+++ b/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
@@ -1779,7 +1779,7 @@ static int cfe_video_link_validate(struct media_link *link)
link->source->entity->name, link->source->index,
link->sink->entity->name, link->sink->index);
- if (!media_entity_remote_source_pad_unique(link->sink->entity)) {
+ if (IS_ERR(media_entity_remote_source_pad_unique(link->sink->entity))) {
cfe_err(cfe, "video node %s pad not connected\n", vd->name);
return -ENOTCONN;
}
--
2.34.1
Hi Ingyu,
Quoting Ingyu Jang (2026-05-15 01:01:48)
> media_entity_remote_source_pad_unique() returns either a valid struct
> media_pad pointer or an error pointer (ERR_PTR(-ENOTUNIQ) or
> ERR_PTR(-ENOLINK)); it never returns NULL. The current NULL check
> therefore never triggers, and the "pad not connected" error path is
> unreachable.
>
> Replace the NULL check with an IS_ERR() check so the validation
> actually detects malformed media graphs.
>
> Signed-off-by: Ingyu Jang <ingyujang25@korea.ac.kr>
Needs fixes and Cc to stable,
Fixes: 6edb685abb2a ("media: raspberrypi: Add support for RP1-CFE")
Cc: stable@vger.kernel.org
With that,
Reviewed-by: Jai Luthra <jai.luthra@ideasonboard.com>
Thanks,
Jai
> ---
> drivers/media/platform/raspberrypi/rp1-cfe/cfe.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c b/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
> index 8375ed3e97b9f..91e9fa0341e06 100644
> --- a/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
> +++ b/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
> @@ -1779,7 +1779,7 @@ static int cfe_video_link_validate(struct media_link *link)
> link->source->entity->name, link->source->index,
> link->sink->entity->name, link->sink->index);
>
> - if (!media_entity_remote_source_pad_unique(link->sink->entity)) {
> + if (IS_ERR(media_entity_remote_source_pad_unique(link->sink->entity))) {
> cfe_err(cfe, "video node %s pad not connected\n", vd->name);
> return -ENOTCONN;
> }
> --
> 2.34.1
>
>
On Thu, 14 May 2026 at 20:32, Ingyu Jang <ingyujang25@korea.ac.kr> wrote:
>
> * Spam *
> media_entity_remote_source_pad_unique() returns either a valid struct
> media_pad pointer or an error pointer (ERR_PTR(-ENOTUNIQ) or
> ERR_PTR(-ENOLINK)); it never returns NULL. The current NULL check
> therefore never triggers, and the "pad not connected" error path is
> unreachable.
>
> Replace the NULL check with an IS_ERR() check so the validation
> actually detects malformed media graphs.
>
> Signed-off-by: Ingyu Jang <ingyujang25@korea.ac.kr>
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
> ---
> drivers/media/platform/raspberrypi/rp1-cfe/cfe.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c b/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
> index 8375ed3e97b9f..91e9fa0341e06 100644
> --- a/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
> +++ b/drivers/media/platform/raspberrypi/rp1-cfe/cfe.c
> @@ -1779,7 +1779,7 @@ static int cfe_video_link_validate(struct media_link *link)
> link->source->entity->name, link->source->index,
> link->sink->entity->name, link->sink->index);
>
> - if (!media_entity_remote_source_pad_unique(link->sink->entity)) {
> + if (IS_ERR(media_entity_remote_source_pad_unique(link->sink->entity))) {
> cfe_err(cfe, "video node %s pad not connected\n", vd->name);
> return -ENOTCONN;
> }
> --
> 2.34.1
>
>
© 2016 - 2026 Red Hat, Inc.