From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 957D539734A for ; Sun, 14 Jun 2026 16:58:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781456284; cv=none; b=Pn6BL16FQ+LyvkPcFb9FaeC9sF1ulDI3TqrtTJZo4rfZNUSju5QKOcxaBpGjn0m/jasnS8hwnyfRbjxoa8fXgYCDxPKZwaG7+W3jGpdwldcpljTg1gF8ZihpLjNL9mfoE9ks2UGpH5Pp5Z6tXv9NpkaI7X/qsyhTJUz2h4bZcUg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781456284; c=relaxed/simple; bh=vHiobahySdZAKWgpMQSFbN+MfD9fEqNMaDttSm7gZy4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NnjEWucv8Qo5ACNdjv/7crSB2Hklw0e0r7w6zBAwCuulXoK0d32RjztgGnIYt+bLvYAn60OEhtHWG3Un5D5erA8wCXq0GsMziXaJk6+FOMtYZzJMikdyGng5BzZhJ9t5tpkg7RM9f1PhFXpTfzF6777V+u4calx/DXcDnmD6VSY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ChhfB9aG; arc=none smtp.client-ip=209.85.214.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ChhfB9aG" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-2c0a5354da1so20424115ad.0 for ; Sun, 14 Jun 2026 09:58:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781456283; x=1782061083; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PlYZ8ARYCInYVGoYYyh2DszhX2UmROVygqNSfHG9s2I=; b=ChhfB9aG0nBuOpRE+cAcpigkZxrTq1SeVZiAxupJXqjA1lYiRE8QdUXxLO1lqPviV3 eWLJfwzdkNVFXoBlabfTWr98QXwDOpf/RzuFy9/rYa7w5Ng/lVZHGKh+RMxLbJh6Dm3a QXoTvNOi2Zt4G8V400lAwzt1yNpLHAM0I+dj7hyLvgL+MIy49zYdaJECcOv4Xg10YLv/ UgD5aqsdg3jHUc1OZrOGdIm4yjxesGTxQ+R5moVsW/YxllfNUrIFeMpdiIe19q37/mkL lgbDq6HlGhcH8WHnXQJfbIpI3Ic6fCHfzUqN2KCJ9e0nEDrkyLH2Wmc/+lv6KbQReA/r o5hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781456283; x=1782061083; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=PlYZ8ARYCInYVGoYYyh2DszhX2UmROVygqNSfHG9s2I=; b=io0ahxDIBaRIHgu6OKp1bW3XQyWmDmoYOWCKDXKrdWzqI3seDkLWeMqOEq1U2z45v1 MLXcKor3NltflmfU8NpkEazdWIg4WwwEMlTwp09Oebx4z60iBZleZbb88rSvhHB37Y/l zNp7i7/Gz+jGxr4Wx1cjTBylM6CMj9ByE+ITyVCGcWLiiFJC9tCq7yyg5iRjLApae8Q3 7JmgaGp6VRYFWOPZmxrrUElXPrWKBIMG2Jp9upae3/xO5WfxjZwNpkRAkW3A3Uz63/tX euLymgy0whx0K64H+GKW2szp8VzyB4PtT0Vk5UGC4Mklb3eEmj7EqAYubE8uz7PTrvWe PQbA== X-Forwarded-Encrypted: i=1; AFNElJ8y9gK2cWxbshBPvkNXxIWaN86Fpa1dQjXNW/yXD4wV5iW68E8PhS0UTtEe64sZyPS8co9Urd4m5sAoghg=@vger.kernel.org X-Gm-Message-State: AOJu0YyLnN9RcLpULyEH4G5JlQObh224dkB3KyS9QWQTHS1fWPd4Zngf rGfgsKA7nthxpivYFZv9rsu2mFHXF2mghXwMC3TTPLaiVhPsWpEjP6+x X-Gm-Gg: Acq92OERPsfS33ZSLKJ5Lrg83Fm/9FHp0YFhWjaxQ92L3IYKEd7mjzAlv3vbxA8YiS6 isvwVLLB3AAcW+sSIX9x3JuawqTm+zU4tuq9k+pcLNubeDdH3gx8A4fskPlL7gx0cVAdt3CTcfn 5nOH74Jnn4VfH1e+bg8D1WxkllrPCy5BHaysJYSmhLGwEPksWqfrqmpkxIL17kjivArZk5op/VM 5X1qM4odHH8DAdK2Kr6zcdFDjq2YiAwkys7hxX4CJWpoCNs49fEP3EK0uV9Alb4b+qwS/Uj6N0n Ck5CyvS0qkvTJfROeGAxlauaf3TAf0u+we1FihOBvcrJNVfQFK7u21SdIcvm+0x8AVSAdGTokGy 07KlLEwRy2RNvDfDPodVI9Y51VI2+d3K1slc0RG8qhrDR4DvqlP9LdDwzq8WMmdkWJAHc5vpdbh 2lXWCF31/4tyQg+CTE1siKpj15SyPrhPfbkpC2fSAKOXrY7oNowBCS X-Received: by 2002:a17:903:2290:b0:2c1:88a1:9839 with SMTP id d9443c01a7336-2c3fb4ec546mr94846745ad.11.1781456282877; Sun, 14 Jun 2026 09:58:02 -0700 (PDT) Received: from localhost.localdomain ([49.207.217.37]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2c42f2e5590sm85284025ad.14.2026.06.14.09.58.00 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 14 Jun 2026 09:58:02 -0700 (PDT) From: Biren Pandya To: linux-media@vger.kernel.org, mchehab@kernel.org Cc: Biren Pandya , Kees Cook , linux-kernel@vger.kernel.org Subject: [PATCH 17/22] media: pci: saa7134: Add missing media_entity_cleanup() Date: Sun, 14 Jun 2026 22:25:54 +0530 Message-ID: <20260614165630.3896-18-birenpandya@gmail.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260614165630.3896-1-birenpandya@gmail.com> References: <20260614165630.3896-1-birenpandya@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The media_entity_pads_init() (or media_entity_init()) function initializes the media entity, but the driver forgets to call media_entity_cleanup() in the error paths and remove function. Add the missing calls to fix the API violation and prevent potential future memory leaks. Signed-off-by: Biren Pandya --- drivers/media/pci/saa7134/saa7134-core.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/media/pci/saa7134/saa7134-core.c b/drivers/media/pci/saa7134/saa7134-core.c index 2f5b258d682b..c0e1e8ad55c8 100644 --- a/drivers/media/pci/saa7134/saa7134-core.c +++ b/drivers/media/pci/saa7134/saa7134-core.c @@ -798,8 +798,10 @@ static void saa7134_media_release(struct saa7134_dev *dev) #ifdef CONFIG_MEDIA_CONTROLLER int i; - for (i = 0; i < SAA7134_INPUT_MAX + 1; i++) + for (i = 0; i < SAA7134_INPUT_MAX + 1; i++) { media_device_unregister_entity(&dev->input_ent[i]); + media_entity_cleanup(&dev->input_ent[i]); + } #endif } @@ -836,8 +838,10 @@ static void saa7134_create_entities(struct saa7134_dev *dev) pr_err("failed to initialize demod pad!\n"); ret = media_device_register_entity(dev->media_dev, &dev->demod); - if (ret < 0) + if (ret < 0) { pr_err("failed to register demod entity!\n"); + media_entity_cleanup(&dev->demod); + } dev->decoder = &dev->demod; } else { @@ -904,8 +908,10 @@ static void saa7134_create_entities(struct saa7134_dev *dev) pr_err("failed to initialize input pad[%d]!\n", i); ret = media_device_register_entity(dev->media_dev, ent); - if (ret < 0) + if (ret < 0) { pr_err("failed to register input entity %d!\n", i); + media_entity_cleanup(ent); + } } /* Create input for Radio RF connector */ @@ -923,8 +929,10 @@ static void saa7134_create_entities(struct saa7134_dev *dev) pr_err("failed to initialize input pad[%d]!\n", i); ret = media_device_register_entity(dev->media_dev, ent); - if (ret < 0) + if (ret < 0) { pr_err("failed to register input entity %d!\n", i); + media_entity_cleanup(ent); + } } } #endif @@ -956,6 +964,7 @@ static void saa7134_unregister_video(struct saa7134_dev *dev) vb2_video_unregister_device(dev->video_dev); else video_device_release(dev->video_dev); + media_entity_cleanup(&dev->video_dev->entity); dev->video_dev = NULL; } if (dev->vbi_dev) { @@ -963,6 +972,7 @@ static void saa7134_unregister_video(struct saa7134_dev *dev) vb2_video_unregister_device(dev->vbi_dev); else video_device_release(dev->vbi_dev); + media_entity_cleanup(&dev->vbi_dev->entity); dev->vbi_dev = NULL; } if (dev->radio_dev) { -- 2.50.1 (Apple Git-155)