From nobody Fri Jun 19 08:41:18 2026 Received: from mail-pg1-f174.google.com (mail-pg1-f174.google.com [209.85.215.174]) (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 77AFB35DA76 for ; Sun, 26 Apr 2026 12:44:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777207446; cv=none; b=CqUIRAw4/ZDXFg/cT98B8XA5g5cjNW6uGMnj2VWUoDSPyrVE4RRl9Rse47TXkAroUbxTHYDCAP0MKHZXTxF3d7Ov7NNVeePTCNWChWAXaUK4geRvInb8vMRVzl2FF8LkaMB+R9zFosWtT9YRH88UANN0DdTCBt3uZvOEiS68nzk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777207446; c=relaxed/simple; bh=a9n+NSndIZJCZ/0CPS01d0mwJ3AdHNC3myQMPC0ObkM=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=d+B2ASlV/5hHCDTydYOZvr3TfH0waWGthc0E9iXJGNcoJyKm8MuDeh34DF6gaKiWOhkJrWZ3WZbOivuCk9lJM2pFIsCi7vArSy4bt15Byljrt7Mxds8bDpvAdc0qTwCkyKVuetoSsqIikCAuWm27lEpr+Yxy8G9xBZgeHQNLVSI= 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=k3q/Migs; arc=none smtp.client-ip=209.85.215.174 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="k3q/Migs" Received: by mail-pg1-f174.google.com with SMTP id 41be03b00d2f7-c7971d0d97dso5579842a12.1 for ; Sun, 26 Apr 2026 05:44:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777207444; x=1777812244; 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=4HsOGoXcMVel5UZKKUbLYS7YRDhsp4Nm+pDK49IhB6w=; b=k3q/MigsIMJrQfv45M57dlPoDBSCwkqhFPoECXKsxTwpeu+3B6lYhRIa/5EzHmrZTR Vr+38nJTcVHSxPumdpRWEB3/+L8ifSH2m+ZOiC4mAmOGd694Cd2K9jnLdyvHgPOIT71n 1DyZjm+JJCkmySPBkr14zQOCswaw/DDFglqgXjepJHQKC1KaoM8eoEvnAZUYqmB3UFPB J5Hfx2hsNyVDAlsmwLrX2fPb9lFVyxdbKI0/Jyj3mqTAGq98xH8bb7ERIwnIbyHaIIX0 u0NjOoCItZTlOxTR+RD9+9uuylHMMX6fMTP0DoKoFcK7PHVAzcFSoAZ+gS7CDkvC2ZXc SpMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777207444; x=1777812244; 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=4HsOGoXcMVel5UZKKUbLYS7YRDhsp4Nm+pDK49IhB6w=; b=oDDGGh116zgLt6JooWRjaz7MJsO5ZI4Q6I0E8lDgSlWnLNsA+61vRoP7MHD1JPqtVL 1aLWctoRwWWr2c5F+dofEYEp82Vh6/ZW/KX+MbKzif4wZd0Ub1QAh6cuZo0rblOjLmz+ kgZxFxvrQqhz4Q1IhxGUmTeFD1Zvj/TIcCo3wH3W90eOYw/tkjY1GIeOSKRSZfmBCU95 9vxrjeRQY0VcmGSuLynjHMcCZMtpTgXi7X75WRfk7audJ7/sGAvz1cbfeQx3f9mNbF0u XbRIGkBaetVe8kv8g73d4bO1RIMkJrnsviHCrCqe7i8srAyZfUTLBtmmxyHs86QqeRKE KvfQ== X-Forwarded-Encrypted: i=1; AFNElJ8zWCTdhxj53jc172bZ8zQ/OrKKq7DyVaEmzAjH35ocRKuD7JYZ/7vL/jr7YIJ6ZkvAp9C3cr295BBiWTE=@vger.kernel.org X-Gm-Message-State: AOJu0YxKuRMexP7LTU4a1zndJ/Ah5/FOTtVIaKTu9ytmIBlBbag/GXlI /E1lt2OpM9v2PHwSao2yd56b6yBiAVkhr8/Ji+ncnMNHokd9DPGFIKg= X-Gm-Gg: AeBDies4VpQB83JAzizHnEMYTYtoco7/80KAffse2YV+FqO8TtPuMdJLdTkNO9/u94C w4+aKobsvnsseJNzAXl0CNViMfykpY7kyVhFyROUdJDJrdP52L7DhNNK/72uShUJShx+FUZsxx0 xi05XPSi+hgenmPDK5YD+NN+kceAae23Sobqtdw/XyE2URlrCXBF/DGt91U62N+8/9hmDdX6pmY 8dWzlMgIzYB1lZ2g4MAEf2wd7nE4IODkWiV6OkthKzwvg2U5gTcE9aX8iJ7T2ShcnrQjmJlo0Mz fvfmawY9P319WgXjbMfasS8bAEnwKujY2l59NrjORIGa7fYgXLAdFnhdtJhKPfxX9PRbVRt5sV0 vYpeWkI8g/v/ViMTX3ZZeBjaglYiqRsr10uwA8t/y04+dgQVI93sBSg8F8UkyrnEPD4H3SYH8xU SnoANmsGLVXG0tLFix5fnYKH6RKhN7bgXT9ahb+ZwB5TJdOLxZkEVtirhvHQfi6aJel/ksTZA2y UeBY0lN3uCwUxw0JIPiLi98Onv7FZdpqlx4Hq9cyOKwK7I= X-Received: by 2002:a05:6a20:e211:b0:3a2:ebfc:6bee with SMTP id adf61e73a8af0-3a2ebfc7c17mr28544615637.41.1777207443705; Sun, 26 Apr 2026 05:44:03 -0700 (PDT) Received: from localhost.localdomain ([1.226.165.54]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c7977031729sm23122558a12.25.2026.04.26.05.43.58 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 26 Apr 2026 05:44:03 -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: Hugues Fruchet , Alain Volmat , Mauro Carvalho Chehab , Maxime Coquelin , Alexandre Torgue Cc: linux-media@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Myeonghun Pak Subject: [PATCH] media: stm32: dcmi: unregister notifier on probe failure Date: Sun, 26 Apr 2026 21:43:49 +0900 Message-ID: <20260426124353.38916-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 dcmi_graph_init() registers the async notifier before dcmi_probe() toggles the reset line. If reset_control_assert() or reset_control_deassert() fails afterwards, probe returns through err_cleanup and the driver core will not call dcmi_remove(). Unregister the notifier before cleaning it up on that error path, matching the successful remove path and the V4L2 async notifier lifetime rules. The local history only contains a Linux 7.0 snapshot, so the introducing commit could not be identified from this worktree and no Fixes tag is included in this draft. Signed-off-by: Myeonghun Pak --- drivers/media/platform/st/stm32/stm32-dcmi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/media/platform/st/stm32/stm32-dcmi.c b/drivers/media/p= latform/st/stm32/stm32-dcmi.c index 13762861b7..200b498127 100644 --- a/drivers/media/platform/st/stm32/stm32-dcmi.c +++ b/drivers/media/platform/st/stm32/stm32-dcmi.c @@ -2063,6 +2063,7 @@ static int dcmi_probe(struct platform_device *pdev) return 0; =20 err_cleanup: + v4l2_async_nf_unregister(&dcmi->notifier); v4l2_async_nf_cleanup(&dcmi->notifier); err_media_entity_cleanup: media_entity_cleanup(&dcmi->vdev->entity); --=20 2.47.1