From nobody Sat Jun 20 17:33:39 2026 Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) (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 718DC5C613 for ; Sun, 12 Apr 2026 07:36:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775979368; cv=none; b=e8MeyFTRnRUPfwoVfOWH5GH64hlSvDYTzZlSSCrFDg0j4JjZ/N+ZhCqAPR5bMh5Sn/KN2lRqLdsdukAylMCfoyayvp4NuIzqfnMl/fwRaUUdOOwO0l1KLvGCCI/HbYnJCxmisj43+jJ5wZ1YsBY0QIpbUPjqpRGbAheAQiR95BQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775979368; c=relaxed/simple; bh=B9AaFMERda29nQkmVI+0OnIN6qktmrr8nji7ug7ancY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=jkmeyYjmhW2XkWiFyJCbYGaOSlwGteNDRqp25CFWqvMwiKZYEtdCFKBrVg8uLNGsqoZxER1yFMJ09lgmeZAVXI2owDE9hUielQHPnyI4WLjXcfLb7eXC8p4JpdwqTWY2bwCa202LMcjEatyl3k4zqD5yncmlLS19+A2mUE8BRH4= 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=Pv57oB9A; arc=none smtp.client-ip=209.85.210.172 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="Pv57oB9A" Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-82f351ca23cso90964b3a.2 for ; Sun, 12 Apr 2026 00:36:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775979367; x=1776584167; 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=13A6oVWiGM1FnHAqOMfToGaJCQ34zMxWKGviKc2A5cI=; b=Pv57oB9AMmGs2xKsYC3v5ssE7wZRFrLhV5JK8yJUY7Qg+Z1E9WlFsxzH6XB7hC9gac v0lMKr8SKHqTmBZmgQ9InVSPqSCX2KltSBGkfmpFoWdLhAQAZkittrITDTUSQUQylCPj ynpQcH2lutbrGKLl9YQCY6+lLMItfYKIPrzRAsZAEo7yQ0jYebuPyiOL6IEuhprnDQDS D5tGpE7ugPnlZr0DqssOZkfPLbnv56/fD7ewGPD34xl+BrE4nxd/i6ycXSoCxxR3XOYN WpkjZG3ly4pYoV0oTcHhhp9PxpcswPt8F+BeJfH1N1EBnfSNUKnrRRjhd3YFCLFFfgX3 OBGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775979367; x=1776584167; 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=13A6oVWiGM1FnHAqOMfToGaJCQ34zMxWKGviKc2A5cI=; b=sb2rytEHLN6GkG8yqWXHLYIcLf2RcJLRG6PbPevmIYVS3DUvHXyYtgEg3eDQBNTijM 3Fq+O3UGTQzR+hDpEztiggnFrXqpSTIk75jYPVSypWURbBpxAyIyHaSF4IWpgrIkTZju 4EOxn038kcCsEOwRZGHmWCxU5F+NcE9kXE4YVd2MGgU3pLal/44Q408uZYP1Iz38vXhd S12FDNhr4lHdPQWzbHon7vwFhKenozO9c3oPjo088lld4uqf4yUOYoO8PDzKEC2TNgWg GQCwa83UDE5BKxQ7GbzEBSO1p34pYzbTHlGiGnDV6bkCV0q7AlGguQwOArTeCeRYOdRp AeFg== X-Forwarded-Encrypted: i=1; AJvYcCV+gfSypM94rcI8oXUtGZ1OLH/dV46Emo7xk6Do2x5Wkci6AiAf4IluvV15hPgpngUX/xMYlCCZIGGd4e8=@vger.kernel.org X-Gm-Message-State: AOJu0YxUx+p9/5td+ri1qmQwKpmwOEIUXbc7lIAQB/WdbUR1uLkCm1A6 ScpFL6USnFXc8F5VLMzqUjEzPhUTcaqMWn8wnMHVOjaKrQzi2HlvFyhL X-Gm-Gg: AeBDietX7HDGMt4990jXY8OSe3SqjXe6UlAjapoXhgUb7xrHkNPYF1lTBKQJREkB7eH S6k3mlVw9LkgwmQuIWnYdGb74JELyPeRggr5wjtasvgYedB1kb5UhQaEUf04756tp49f2DaH6am YD8eWHcTd/UupNw06P+ALkCVIl2ZeaJtkJ6HlPmaHqa0Z9x4sh3WLzp02HwF1Me4a18gI7qGt/d FrsXE5ovs6aHgyayLhQ2fJeTM8aBmzsHFKgYPv01qo/TNzC27KCICIEl6Fo51kD7EaDrD39JZW7 /B9fFqn8fA+bpCJiRocgX1jCLoWrXRL+77164manMwkJi9XXrWWqUqGTtzAc6TDXOJDWDodMBxM oeMsjNm4jfGELr43Se8e5/GHnkq2b6QofN/H3ugj0zNjhulkVuWRS8TcI9aqX3l6M0Qf/9KroFo qsotHPil8urBlJchc= X-Received: by 2002:a05:6a00:e1b:b0:82c:e60c:f36d with SMTP id d2e1a72fcca58-82f0c3e7d30mr9727757b3a.48.1775979366805; Sun, 12 Apr 2026 00:36:06 -0700 (PDT) Received: from lgs.. ([199.182.234.55]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f0c30e7besm7478957b3a.5.2026.04.12.00.36.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Apr 2026 00:36:06 -0700 (PDT) From: Guangshuo Li To: Eddie James , Ninad Palsule , Joel Stanley , linux-fsi@lists.ozlabs.org, linux-kernel@vger.kernel.org Cc: Guangshuo Li Subject: [PATCH] fsi: i2cr-scom: Fix device reference leak in cdev_device_add() error path Date: Sun, 12 Apr 2026 15:35:59 +0800 Message-ID: <20260412073559.2425868-1-lgs201920130244@gmail.com> X-Mailer: git-send-email 2.43.0 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" After device_initialize(), the embedded struct device in struct i2cr_scom is expected to be released through the device core with put_device(). In i2cr_scom_probe(), the cdev_device_add() failure path frees the allocated minor but does not drop the device reference, which bypasses the normal device core lifetime handling and leaks the reference held on the embedded struct device. Fix this by calling put_device() after freeing the minor in the cdev_device_add() error path. Fixes: c0b34bed0bbf7 ("fsi: Add I2C Responder SCOM driver") Signed-off-by: Guangshuo Li --- drivers/fsi/i2cr-scom.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/fsi/i2cr-scom.c b/drivers/fsi/i2cr-scom.c index cb7e02213032..3de3f0194d10 100644 --- a/drivers/fsi/i2cr-scom.c +++ b/drivers/fsi/i2cr-scom.c @@ -109,8 +109,10 @@ static int i2cr_scom_probe(struct device *dev) dev_set_name(&scom->dev, "scom%d", didx); cdev_init(&scom->cdev, &i2cr_scom_fops); ret =3D cdev_device_add(&scom->cdev, &scom->dev); - if (ret) + if (ret) { fsi_free_minor(scom->dev.devt); + put_device(&scom->dev); + } =20 return ret; } --=20 2.43.0