>From 307209d175be0145e36b9cf95944e2e62afeab11 Mon Sep 17 00:00:00 2001 From: Gabriel Shahrouzi Date: Mon, 24 Mar 2025 19:45:55 -0400 Subject: [PATCH] media: Fix invalid link creation when source entity has 0 pads This patch addresses the warning triggered in the media_create_pad_link() function, specifically related to the check WARN_ON(source_pad >= source->num_pads). The fix proposed adds an additional check to ensure that source->num_pads is non-zero before proceeding with the media_create_pad_link() function. Reported-by: syzbot+701fc9cc0cb44e2b0fe9@syzkaller.appspotmail.com Closes: https://syzkaller.appspot.com/bug?extid=701fc9cc0cb44e2b0fe9 Tested-by: syzbot+701fc9cc0cb44e2b0fe9@syzkaller.appspotmail.com Fixes: a3fbc2e6bb05 ("media: mc-entity.c: use WARN_ON, validate link pads") Signed-off-by: Gabriel Shahrouzi --- drivers/media/usb/uvc/uvc_entity.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/media/usb/uvc/uvc_entity.c b/drivers/media/usb/uvc/uvc_entity.c index cc68dd24eb42..5397ce76c218 100644 --- a/drivers/media/usb/uvc/uvc_entity.c +++ b/drivers/media/usb/uvc/uvc_entity.c @@ -43,7 +43,7 @@ static int uvc_mc_create_links(struct uvc_video_chain *chain, source = (UVC_ENTITY_TYPE(remote) == UVC_TT_STREAMING) ? (remote->vdev ? &remote->vdev->entity : NULL) : &remote->subdev.entity; - if (source == NULL) + if (source == NULL || source->num_pads == 0) continue; remote_pad = remote->num_pads - 1; -- 2.43.0