From nobody Wed Jun 17 07:29:05 2026 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 D07E4358378 for ; Mon, 27 Apr 2026 10:00:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777284060; cv=none; b=YVu/04Loa+cZE98kiXCZDt93oTPQGg3yBGF8f9u2vK36mYTXKbogpu1Sl2vXzSEU8uoSRy0HW2E/pupfbf5z8JzRJLkKoRBqQ8ilucvM2goezz3xTWjUxTSaZKFMroaWGGPN8SPw4AurzsJA2BFa/2kLjegzW0Vnp7ZEJtUGLSY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777284060; c=relaxed/simple; bh=ZI6ZwXlG1e5ACFzhDMQRxll59Q4E3kZhbdsX1UNQ54c=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=j0CSV0BgjSe3odRCZs2NLBdybiW6InojSxjjwOaJv7cf0T6kZmgkYMgDKpSBPUgaX1BguLctlsofgjUkb0oyjw7UVmmiKHJmd+eOoAnXsGHKsuxph5UROdRZvzjr9K+mfBptUURAr2q4SMn7LjY2aH6S3sZ+dgvbjYBxM/qDqD8= 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=jsUU2/uF; arc=none smtp.client-ip=209.85.214.173 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="jsUU2/uF" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-2ad9a9be502so61997875ad.0 for ; Mon, 27 Apr 2026 03:00:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777284057; x=1777888857; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=0EvvvHNzTOaXmxdzFUeL0y2A0j/j9spluGpaFZP3FMU=; b=jsUU2/uFRkFRoLNuvuS1g6q/cHoD8Vg1diwcpBbr1fT7LDWeuZP4JiqYAJTVWPdnV6 Touu6EEbVXqbIK85ZEJ+HVV5X+LFIXUWBQ0sZMz3bu0mqY4AFFT7ybihXQwL2wEYWBZE Vg0DnHvYGK7u4kA0cEgAfOw4Kx1V2l4s0twsd6vdzh/OccuvkUb7FJoeV6Ih33oqdBhQ X5JXXJmTJTFp/PZfz4Iaeq5Mv1iDQOx6QtDb/DLxXIP2sN7RXj8mOwckSJzWTU6XQOeW 5yh7FNTcG295/Gg12fchFNrgRWY9T2FSTaEuTnw857S4VBku4u3PReYpRXVMRD+zxVrN fueA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777284057; x=1777888857; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=0EvvvHNzTOaXmxdzFUeL0y2A0j/j9spluGpaFZP3FMU=; b=IA+V9YIRAKVkcGUfDWhnvW3Y/S/Q4ZJQUP1Z98Ax4yUlxUdP8NFwErM2HhqjG+R48O JO8Rt86USw8XkKXPxyb7WN05liMs40p64idhDc8lx4XMPRujeK4SNehZ/4kjNZHZ0GId FaXtXTx0N1rsSnWqFx4z+QIghKa44PY9A/BoqVtx8dT9aDWs8j6egmeVhCLtrD0kFkcK 6RwX/tAoV8vGveQqZEmZHQmpDr51lNal0wQ4U1uIYB1yjHtAcKyOhR1mMNRkIC3eLyhu QG4Wjf0w7dLs/pffJaEdnJL4YWQAj9jGmnYVzs9i+kyOdrrcRZb1yc9BhiBlExCn7lAT SQaQ== X-Forwarded-Encrypted: i=1; AFNElJ/IvFYlMmho9vuDdla9u4LP5Icb+ET9ZABRpJO1fliG0MdHyVTzD2DKBLB6+kx5K7MfxXQlTqVdagO7/vI=@vger.kernel.org X-Gm-Message-State: AOJu0Yw1mBwRm5ochreSFfMmwidzkuhOzDki4ZPBQDgSCdMfqfWdPuK1 pa14vIz8aHmVJTDrOfQ4aWrJOyXXHmLOsW7PIU/mTndwWaf3i5Noc0A= X-Gm-Gg: AeBDiev5H5G7BDUBezRizmFSIBVeC7TdBxWZr5DtqBjhAgX5wj1d5mxbKvO/G8MSi9D O7WjNffnp2s0qjAXIKkJT5EybTkNlcZc7LuzLq7Gt+lzykX2DKOqU/LUf98cc1QIO6tDAzLoJxR 8EgwoZMrOu/5noPfXyBS2CWMcwPYdFh0XodUQT5dokltQz6ekaulVZjZViUN59Ncqu1WtMbzFO7 b8sRjta51e+WC0GMCEplEIXT3HzUf0lNiwnRP3VduPvEHFZoXuz1yhMT9zeKJoFCPrHXy1mk6P/ hOzOoUZ9u3+ESLx50dc9IknPum1kuQeAU3w1iFoINkpiY+BB9ojNBypcjBkNRhUM6HOAPjLdY8P fF1ysCeC7k9doijPNu9xn/7bP7+BMCvl2HmKMTlSjNNwUnbaLJ+nlC9KGWECB0Ou5mJhZW15cqI LUQBzinq3QmghVZn2NHHlZU0LLTl75L8CmNMnlOXz0m9dXrHKs99A8LepSHiI87frAvjQ+9f470 d9h+dnj9wmCNPtr6ToOm3zgktUQg+4HwKzX+UCYI9FgTnc= X-Received: by 2002:a17:902:e54e:b0:2ae:ce35:2686 with SMTP id d9443c01a7336-2b5f9e64c77mr424633395ad.5.1777284057141; Mon, 27 Apr 2026 03:00:57 -0700 (PDT) Received: from localhost.localdomain ([1.226.165.54]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b5fa9ff713sm304240245ad.5.2026.04.27.03.00.53 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 27 Apr 2026 03:00:56 -0700 (PDT) From: "=?UTF-8?q?=EB=B0=95=EB=AA=85=ED=9B=88?=" X-Google-Original-From: =?UTF-8?q?=EB=B0=95=EB=AA=85=ED=9B=88?= To: Maxime Ripard , Paul Kocialkowski , Mauro Carvalho Chehab , Greg Kroah-Hartman , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: Myeonghun Pak , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, stable@vger.kernel.org, Ijae Kim Subject: [PATCH] media: cedrus: clean up media device on probe failure Date: Mon, 27 Apr 2026 19:00:10 +0900 Message-ID: <20260427100049.29034-1-pakmyeonghun@bagmyeonghun-ui-MacBookPro.local> X-Mailer: git-send-email 2.47.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Myeonghun Pak cedrus_probe() initializes the media device before registering the video device, the media controller, and the media device. If any of those later steps fails, probe returns without calling media_device_cleanup(), so the media device internals initialized by media_device_init() are left behind. Add a media-device cleanup label to the probe unwind path and route video registration failures through it as well. Fixes: 50e761516f2b8c ("media: platform: Add Cedrus VPU decoder driver") Cc: stable@vger.kernel.org Co-developed-by: Ijae Kim Signed-off-by: Ijae Kim Signed-off-by: Myeonghun Pak --- drivers/staging/media/sunxi/cedrus/cedrus.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/staging/media/sunxi/cedrus/cedrus.c b/drivers/staging/= media/sunxi/cedrus/cedrus.c index 6600245dff..2c25654640 100644 --- a/drivers/staging/media/sunxi/cedrus/cedrus.c +++ b/drivers/staging/media/sunxi/cedrus/cedrus.c @@ -507,7 +507,7 @@ static int cedrus_probe(struct platform_device *pdev) ret =3D video_register_device(vfd, VFL_TYPE_VIDEO, 0); if (ret) { v4l2_err(&dev->v4l2_dev, "Failed to register video device\n"); - goto err_m2m; + goto err_media_cleanup; } =20 v4l2_info(&dev->v4l2_dev, @@ -533,6 +533,8 @@ static int cedrus_probe(struct platform_device *pdev) v4l2_m2m_unregister_media_controller(dev->m2m_dev); err_video: video_unregister_device(&dev->vfd); +err_media_cleanup: + media_device_cleanup(&dev->mdev); err_m2m: v4l2_m2m_release(dev->m2m_dev); err_v4l2: --=20 2.50.1