{"id":2222409,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2222409/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260411122118.2196540-1-lgs201920130244@gmail.com/","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/1.1/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/"},"msgid":"<20260411122118.2196540-1-lgs201920130244@gmail.com>","date":"2026-04-11T12:21:18","name":"bus: fsl-mc: Fix refcount leak in fsl_mc_device_add() error path","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"2265ebb2c5843863853ccc7ab3f9b088a31da875","submitter":{"id":91722,"url":"http://patchwork.ozlabs.org/api/1.1/people/91722/?format=json","name":"Guangshuo Li","email":"lgs201920130244@gmail.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260411122118.2196540-1-lgs201920130244@gmail.com/mbox/","series":[{"id":499554,"url":"http://patchwork.ozlabs.org/api/1.1/series/499554/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=499554","date":"2026-04-11T12:21:18","name":"bus: fsl-mc: Fix refcount leak in fsl_mc_device_add() error path","version":1,"mbox":"http://patchwork.ozlabs.org/series/499554/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2222409/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2222409/checks/","tags":{},"headers":{"Return-Path":"\n <linuxppc-dev+bounces-19647-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=imIozAd2;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19647-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=\"2607:f8b0:4864:20::62d\"","lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=imIozAd2;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gmail.com\n (client-ip=2607:f8b0:4864:20::62d; helo=mail-pl1-x62d.google.com;\n envelope-from=lgs201920130244@gmail.com; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4ftCcm5MwTz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 11 Apr 2026 22:28:06 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4ftCcc278wz2ynH;\n\tSat, 11 Apr 2026 22:28:00 +1000 (AEST)","from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com\n [IPv6:2607:f8b0:4864:20::62d])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4ftCTM3SZvz2yl2\n\tfor <linuxppc-dev@lists.ozlabs.org>; Sat, 11 Apr 2026 22:21:42 +1000 (AEST)","by mail-pl1-x62d.google.com with SMTP id\n d9443c01a7336-2aae146b604so21046435ad.3\n        for <linuxppc-dev@lists.ozlabs.org>;\n Sat, 11 Apr 2026 05:21:42 -0700 (PDT)","from lgs.. ([199.182.234.55])\n        by smtp.gmail.com with ESMTPSA id\n d9443c01a7336-2b2d4f0a393sm60736815ad.40.2026.04.11.05.21.31\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Sat, 11 Apr 2026 05:21:34 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1775910105;\n\tcv=none;\n b=SSJ08ccFP/1i8TAtnEXz6jzK3zD2XdDa9aA4GKnmmIDYO7ygSxUDElim4kNZ8xhOuV1z4L44Tg0um+VtYjs//s9uQDJOe6Lw1GIKC8z0PT3zhI8ehdGeYpSp8zzED0/fBVCiq4I3TP66ku/ivHbwpvKg+3loDnrkjdi2dHCyK+XZk1Hjlz6z96VBtNtrKM5RTYhuyUND09ku+jNgrk8nNxDcNVF12yAXThfsy9f9cDOVB8uIWG2saoCVZTkpC5TaC8uZCeZRODmZJubTGQpuGVliXqYI8EnhC6bZTikgwI9vMoNF1SepN00qVLl7+1WnFd+pv51VoWIop7FD1Jbv5A==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1775910105; c=relaxed/relaxed;\n\tbh=iDhxS46WB9cNJon+ZSJd5o32lpx1Hn2DEDhx5qw0Ti8=;\n\th=From:To:Cc:Subject:Date:Message-ID:MIME-Version;\n b=lB3FFTlAsE06CHh8tARvfn3qQkGtVMrsWAXi3yaY25TJ6XR5sRGQMbDVLWvdOujPrJP2CsahQUm75kgHmphmENwRwCcY6w2Q2dLdrog0mj3tB6RBC5Ju+Tv4SvwiLJ4WRURLs/lAshc3eBmVyInEiwLhoFQMexXdUgteJj/M5mhvqlxwyBd/dEnB8yfSj6aDFHMHIkJtvMrJnkGvv6gB8g28o07fOpHVL8aNjELKLr7ySn39TLUNHgXdy/8ScF16pXMKS8qkXMvI40Lg8Ku3WD+6uXS/jBVeoQDBdUN7K4Zxl4lXaxBEpRVQkUMHoDuwLoRG2AFySl9g8/8MIJWy1Q==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com; dkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=imIozAd2; dkim-atps=neutral;\n spf=pass (client-ip=2607:f8b0:4864:20::62d; helo=mail-pl1-x62d.google.com;\n envelope-from=lgs201920130244@gmail.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=gmail.com","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1775910095; x=1776514895;\n darn=lists.ozlabs.org;\n        h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n         :to:from:from:to:cc:subject:date:message-id:reply-to;\n        bh=iDhxS46WB9cNJon+ZSJd5o32lpx1Hn2DEDhx5qw0Ti8=;\n        b=imIozAd2/djxSh4LCaNp3pmwcjWdoJSwJugtWxEXxOgbjcikHZnTFC0ZKQXiDtR2wV\n         wZohmSpxr6G8FLSDdwRyCrvPhkhZ+SBbFGMX0xQpc2fBgu3JxXFJJvpdNKKyrnD4VxAx\n         US5PD6PVoy0pZNLLpTkrlabks5E0XEbs1dV6Au7khM5mxZ8qpOC0MxzYeTcsA4qqZj67\n         H5UTxjLxNeayBXe7ztIljTa7bvhhGJoeZXbTYunP0n3oKgYrYAqRTYwLeWEuQPRCyy1p\n         LGsWJVSfWKcbfiC8/bjmzNEZU9OfwPlI/cuDuyXqBQuQdaCoLx0DUHzNjhKSnbgIcPLW\n         HQwQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775910095; x=1776514895;\n        h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n         :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=iDhxS46WB9cNJon+ZSJd5o32lpx1Hn2DEDhx5qw0Ti8=;\n        b=B/N+xebtIkjDYVMc44JudgD0MkM4xniOc14zDHH2Egg3oS0vXKOgmfPj57E7ZDbk8q\n         BctIG2d5D8zV2rAMQ9mfKEd8GGtFqKqAcBTOSBo5Lx7TK+CWvKdVxfA72cB07D1XzsEM\n         iupxX9Lxb3z2Ll6mQ6C2+OPTs54h5PqrP9/Jm3uKcvHCae7iTtONQT0Nzu3sm2RUPk4P\n         DJ8KYsNmHevi1cgK7DRlXY0XNUE64x4I2Xs5ey8F2AzC7fTg7BCf0BppuAkv01T4nHKz\n         BcZCA5xGqwdi8ObW5TwmfvBxshSQsyLwQ90h8+MPTc+auOmQ4jV18wv3lQ5Q5O7kFcNo\n         i4NA==","X-Forwarded-Encrypted":"i=1;\n AJvYcCVwEtN/2MRs9qb+NV3pcU2VY13r7zwBCg9JakQBy4V6uivS9aa6gURp71oVf9oe9MU2gW0BFrLlRY8r9XY=@lists.ozlabs.org","X-Gm-Message-State":"AOJu0YzNxjXUhzRV9lrNg/FsIaKdz84pEr5n72ypTkZaCqfVB7THrB7e\n\t8WxKEqzAPoOgfDfKduLdGZ4oRqkdnm9VYOO9DNUytnFnuHAJeHYKV7eQ","X-Gm-Gg":"AeBDiet673zZZ/2USi5yzLvpV7+xVUxaBOZWDyluoQtRhOHZtwTVMZY6t7S6bnC5X1j\n\tbVbs3HqVbnvuSQxqyZJ6IDyEzY4aQ1qAxHDlYuvaCAm4johKliEuaZUgw5oLPy+n8Zvn4ARkUg2\n\tp786GOKgcF28sa7qCUI0tIaRONNfFby2bP7Y7f/JpMbus/LuSEm/0jUKaOZeOtPtIOmSqtxhCTJ\n\t1OJ1sdUXQaxSoDZXKOzl3X4yK5utm+us24D8OInc4DxCXMm4w4GVji4444vog+Ii4uy6oW/G0lL\n\tSm0TlQTweilPOYc4U0M+9xx4u7olw1UBjYHCHxmwaxglhQOd6hJ49ceLLvygvbpalTwEUJStRFI\n\tv6phaNhSWlrbLvSuLHX616f9vo57SUMTJVgyBuoPgwqn/OCurRfUy5yon/Aog8CSE7xSe+x7dRw\n\te2nf6jFPd95E3sFZo=","X-Received":"by 2002:a17:903:3b51:b0:2b2:42da:25cb with SMTP id\n d9443c01a7336-2b2d59aaa97mr50470925ad.19.1775910095243;\n        Sat, 11 Apr 2026 05:21:35 -0700 (PDT)","From":"Guangshuo Li <lgs201920130244@gmail.com>","To":"Ioana Ciornei <ioana.ciornei@nxp.com>,\n\t\"J. German Rivera\" <German.Rivera@freescale.com>,\n\tStuart Yoder <stuart.yoder@freescale.com>,\n\tAlexander Graf <agraf@suse.de>,\n\tGreg Kroah-Hartman <gregkh@linuxfoundation.org>,\n\tlinuxppc-dev@lists.ozlabs.org,\n\tlinux-kernel@vger.kernel.org","Cc":"Guangshuo Li <lgs201920130244@gmail.com>,\n\tstable@vger.kernel.org","Subject":"[PATCH] bus: fsl-mc: Fix refcount leak in fsl_mc_device_add() error\n path","Date":"Sat, 11 Apr 2026 20:21:18 +0800","Message-ID":"<20260411122118.2196540-1-lgs201920130244@gmail.com>","X-Mailer":"git-send-email 2.43.0","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Spam-Flag":"YES","X-Spam-Status":"Yes, score=3.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID,\n\tDKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,\n\tFROM_LOCAL_DIGITS,FROM_LOCAL_HEX,RCVD_IN_DNSWL_NONE,RCVD_IN_SBL_CSS,\n\tSPF_HELO_NONE,SPF_PASS autolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Report":"\n\t* -0.0 SPF_PASS SPF: sender matches SPF record\n\t*  0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record\n\t* -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from\n\t*      envelope-from domain\n\t*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily\n\t*      valid\n\t* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's\n\t*       domain\n\t* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t*  0.0 FROM_LOCAL_DIGITS From: localpart has long digit sequence\n\t*  0.3 FROM_LOCAL_HEX From: localpart has long hexadecimal sequence\n\t*  0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in\n\t*      digit\n\t*      [lgs201920130244(at)gmail.com]\n\t*  0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider\n\t*      [lgs201920130244(at)gmail.com]\n\t*  3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS\n\t*      [199.182.234.55 listed in zen.spamhaus.org]\n\t* -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no\n\t*      trust\n\t*      [2607:f8b0:4864:20:0:0:0:62d listed in]\n\t[list.dnswl.org]","X-Spam-Level":"***","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"},"content":"After device_initialize(), the lifetime of the embedded struct device\nis expected to be managed through the device core reference counting.\n\nIn fsl_mc_device_add(), all failures after device_initialize() jump to\nerror_cleanup_dev, where mc_dev and its associated resources are freed\ndirectly instead of releasing the device reference with\nput_device(&mc_dev->dev). This bypasses the normal device lifetime\nrules and may leave the reference count of the embedded struct device\nunbalanced, resulting in a refcount leak and potentially leading to a\nuse-after-free.\n\nFix this by using put_device(&mc_dev->dev) in the error path and let\nfsl_mc_device_release() handle the final cleanup.\n\nFixes: bbf9d17d9875 (\"staging: fsl-mc: Freescale Management Complex (fsl-mc) bus driver\")\nCc: stable@vger.kernel.org\nSigned-off-by: Guangshuo Li <lgs201920130244@gmail.com>\n---\n drivers/bus/fsl-mc/fsl-mc-bus.c | 6 +-----\n 1 file changed, 1 insertion(+), 5 deletions(-)","diff":"diff --git a/drivers/bus/fsl-mc/fsl-mc-bus.c b/drivers/bus/fsl-mc/fsl-mc-bus.c\nindex 25845c04e562..6d132144ce25 100644\n--- a/drivers/bus/fsl-mc/fsl-mc-bus.c\n+++ b/drivers/bus/fsl-mc/fsl-mc-bus.c\n@@ -905,11 +905,7 @@ int fsl_mc_device_add(struct fsl_mc_obj_desc *obj_desc,\n \treturn 0;\n \n error_cleanup_dev:\n-\tkfree(mc_dev->regions);\n-\tif (mc_bus)\n-\t\tkfree(mc_bus);\n-\telse\n-\t\tkfree(mc_dev);\n+\tput_device(&mc_dev->dev);\n \n \treturn error;\n }\n","prefixes":[]}