From nobody Mon Jun 15 20:35:03 2026 Received: from mail-pj1-f41.google.com (mail-pj1-f41.google.com [209.85.216.41]) (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 02BFF29408 for ; Mon, 13 Apr 2026 16:00:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776096033; cv=none; b=NMmrdpdTpfeLf9F/Q20NhMc+jYvFNAEvxf2HG9bMVRrsOrIDIMXKmXQyEj82ssBvoRRkc4+ZAYoe4ubAl5CpubD5bIZAbNp8s/20vRltF9uD541G5yrZDkAFWZBMPGNzPtDSQjGM5xNTXC2Gh5ppyKEAfLZRzDd0mN249SoFKqM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776096033; c=relaxed/simple; bh=GgZjLCH0gg3qwca6WYNfwT2avfhsGUzd4ibPnd9l4+s=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=b3qmC/arqJj11wHD3zgD1gRsKxm87n+2Ht1tDVyWUIq7k/iUFDar45h6G5KZtZ8akOVqE22Tr2Eq3mJ8CY2Utws/a43JlP6KSfASGjxSDU4mhe0eB99geKHRxiFq65q1AxhbtyJeGpYOtQ4PkZde2Z7myTXvXYm6iPWknyvAYsQ= 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=JD/Hq3CD; arc=none smtp.client-ip=209.85.216.41 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="JD/Hq3CD" Received: by mail-pj1-f41.google.com with SMTP id 98e67ed59e1d1-35fc0d7c310so316693a91.1 for ; Mon, 13 Apr 2026 09:00:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776096031; x=1776700831; 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=HiAoS81dXNfOGTcC/4JRvudQMKnDPM9FaJDmTN5qYwA=; b=JD/Hq3CDD/RUWkUDAoRtjqVl6u/wXvwuK6lsuryG6XOxqhqP6R33hrST2sAdOmShci VReHdcS1QzikMJDv/cHOl/MqRfA8Azi19YF8cFbycc+lPhaZ2C97/qgoTMh+voMVgXLG /BTvrJrun2UL4P0YjMk6Yqq110naANX1gAVGDljFLsc2RzU6SCROnbuerNI10ktR04EC gR5E8t+7lFQoVWaKmzI2T4s5//JPs/bv5xRJOwlUuNK2QmfdZDQnLIZmYWcLs1c+zp3/ aKyFFUt9YhFnXSpS57b4trvnLuFfAi+Pts1gmmLg7B+f4hQtxufhLM5JoAp35gEAZxYX kT6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776096031; x=1776700831; 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=HiAoS81dXNfOGTcC/4JRvudQMKnDPM9FaJDmTN5qYwA=; b=aGOP4tbU8oRyEQW4M8qsRvqWoADktI+Xw1dyJObcz/QYHr1k5eGxddRT/zEFwVYtmm ge1IivY3ZjfrVR4jmgTTOxFlgND0s6NhRcvd4Fa3kNtitQ8BKzFrkR5VvYGbq8EyMQDG ts4AVrzrkp/DMiSsuHC2QSzfExRp1ZJQcMhYcyfzik9i2/+f/OGAe8rUEpLAU3m3kTtV hLqsl8fj9TmdwdLN/BhZyrvv2bJ2tcYD/8/cfSKg0xizb8AgyZQpSUo3MVXjhuzjtXBo DWUz3wFJgC6mvRT2j1JPxKp7MWVhTadw9Sy3Gx+WUWt7Rl2OpFUqQIZNj9rMNTEIa0W0 0rZw== X-Forwarded-Encrypted: i=1; AFNElJ/l5x3XKcphBObgbU5PsBJ2Rmu/0DexoOUNXw/VCyLEenhrdOFh160nwZq9hm2Ad4c5YY4vdDo0aHH9Y1o=@vger.kernel.org X-Gm-Message-State: AOJu0YwVChJQZ7SnE+UZC0Uac2fMD2xzSjUgjdO9H3wGS5Ze8ULCtIsJ BYJkVxtbO+am8JM6fAkx3S2PdQBlpEP1iCCKEA/oBDacHC9snHTfKCup X-Gm-Gg: AeBDietsZXoZjc24CfgnIxtwEZHcEA1rVwqRYmefU7j6OuopF7/34+VJTNBQOhGW+Lz 9UPhhUNQH7qBVfjmlXIUTx48UHzG9LNZanASG7OQ5L1jUiC5iX6QYTtzusBabSIRrAgPC97YCwm il/gCiNfLJA3uYhOKobw0+U0Jdv2hAU9FFWv2ADUFUhguus4i5WRLECJSCv1B4VePewy+j1aY1v dFXJRdpdudAv0KePIb4h8QfgK0plYY5d/2hvZwA23qm6tXk/5GFQoh3cjFGRxV4VlIL0cgw5TvE sbjgP6oWZx4iiQ+JCvR6D9yubs87Q7zApYdodJjeD+Ar2EmzvyyrPUNLJFqaDLZUnA9kTEnSfaw +aQkjJqWQtPBZJDkkua8oRiLcvdpAvFCErWd7qYZ8nA9PvxmrJUiKQitq687bCW5gkitrxIIy2i kfqA6uXc59M2LhnD8W3z4rt82QdAQ7Bnc= X-Received: by 2002:a17:90b:1d8a:b0:35e:30bc:96ed with SMTP id 98e67ed59e1d1-35e42781abdmr14244297a91.10.1776096031284; Mon, 13 Apr 2026 09:00:31 -0700 (PDT) Received: from lgs.. ([2409:893d:1188:142d:edd0:8593:d07a:ab64]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35fb37d6e36sm4778211a91.16.2026.04.13.09.00.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Apr 2026 09:00:29 -0700 (PDT) From: Guangshuo Li To: Guangshuo Li , linux-kernel@vger.kernel.org Cc: stable@vger.kernel.org Subject: [PATCH] eisa: virtual_root: fix reference leak on platform_device_register() failure Date: Tue, 14 Apr 2026 00:00:15 +0800 Message-ID: <20260413160015.3061010-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" virtual_eisa_root_init() returns immediately when platform_device_register(&eisa_root_dev) fails. The call flow is: virtual_eisa_root_init() -> platform_device_register(&eisa_root_dev) -> device_initialize(&eisa_root_dev.dev) -> platform_device_add(&eisa_root_dev) If platform_device_add() fails, virtual_eisa_root_init() returns the error directly without dropping the device reference acquired by device_initialize(), leading to a reference leak. The issue was identified by a static analysis tool I developed and confirmed by manual review. Fix this by calling platform_device_put() when platform_device_register() fails. Cc: stable@vger.kernel.org Signed-off-by: Guangshuo Li --- drivers/eisa/virtual_root.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/eisa/virtual_root.c b/drivers/eisa/virtual_root.c index cd9515d9d8f0..93261d2e3532 100644 --- a/drivers/eisa/virtual_root.c +++ b/drivers/eisa/virtual_root.c @@ -50,8 +50,11 @@ static int __init virtual_eisa_root_init (void) { int r; =20 - if ((r =3D platform_device_register (&eisa_root_dev))) + r =3D platform_device_register(&eisa_root_dev); + if (r) { + platform_device_put(&eisa_root_dev); return r; + } =20 eisa_bus_root.force_probe =3D force_probe; =20 --=20 2.43.0