From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id ABAF4CD5BD2 for ; Wed, 27 May 2026 00:46:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-Type: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=/qmpMpDGto5NskeOa7RLSttaP2uOAMocijbFFRGCfIw=; b=tegMgSXhomwtiInC4Neo/nTfvV qtf0Aa8dFReY1LNyadSDlnH4YSLOD/ARLZwmaPc8SYTduJHZDvEqQ+TOWN3y3qqmBXGHjS9rw8tmX CiVgnf+9SetwitffGGa2wI5p6dXJS5GCNDt5ybk0Q9/6XUhHRo+vciD0g5CoN7vBFBXyzB8o+LwwT 1sbiDnP9ra/ZyZxKvScksjC+ssnc8BmDAc1Q0hUHcoO+0ZeEnqkLbg0NtD+5MvKjtoeeBkulBjfJp Lvt9eZsj3OU5Uf/AkmwPHWqWlCttwWzDWw+sx1HecmpNq6Xg6iHuBWIXVw1rvY7LqTcU+6/pnQNWn whDf9gpA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wS2PN-000000036Bg-2yHg; Wed, 27 May 2026 00:46:05 +0000 Received: from mail-pj1-x102d.google.com ([2607:f8b0:4864:20::102d]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wS2PK-000000036AG-1RsZ for linux-mediatek@lists.infradead.org; Wed, 27 May 2026 00:46:04 +0000 Received: by mail-pj1-x102d.google.com with SMTP id 98e67ed59e1d1-36931e4f5e8so10405714a91.2 for ; Tue, 26 May 2026 17:46:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779842761; x=1780447561; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=/qmpMpDGto5NskeOa7RLSttaP2uOAMocijbFFRGCfIw=; b=RP8uw5NEz+U3gJmiAOcTvXo7JTeffyq2+rFqWN+SCEeyf2NJvZuv2/V5fhlPLNzxBj l1z3DMe+WddDzq0a/5/LlxkMpVFE6EI7jx2vdy+i97yeMsKNpFH9EJ5PLtuHsSR1wdvN Bmrhs24G+gIPoueo4TdfJnx45vwhnal/nzkcVhkNaBzXuJPkKhhMX0cQp1O0vtCghoFC 3QCSyGm/6BfCwhB6aIDyuyJ0f4Z0VmqMqkyKr8Myc9xMtPnNgD13iNI0qUcGxridx9C0 yOe3ydYmo4Xjgd6uDYYsRBdUiABF620xbTasjiJqtalOUagi8DsZnzh2QwzSFCrHS8wJ Jy0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779842761; x=1780447561; 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=/qmpMpDGto5NskeOa7RLSttaP2uOAMocijbFFRGCfIw=; b=H8x5RdgljnmbOo32MsRCp+AXAY3xscsx13F24Tmo/grNlqSisIUe35i3PjzgOLl5R7 reUr0LiyvV38vZpdAwy8WFKnzShkXfGG5Mr1V4VDt7GAPQaVIPPJMMHyg8tNlyLnK6Ox Y9hKX02OL6xAGf6ddEfsAQ+N6DwfPmdcEKTWh9vnff0vaFwsFyFg7OdZFA9EFq1d3jkf LLdUqSJe/4BT76Lzu0msGRQ5LGYwVZzN6rQqR1Uq73IU48MTAvDb35ir/RiH00Jbx6XS zj0nJpnK2vveX4JYZ246YkK+ULbmyW+uGSotKi/PWkFIA7F6DG+859h/sEF6BaMt3Y3D XqeQ== X-Forwarded-Encrypted: i=1; AFNElJ9PbCYCvCBFfrlPHQTfvRTNJwU8sbezB0LGq+eFrPl87wl79FcU0eZjogbeDpFiIefYB8hLMDlxAlyH4XH3GQ==@lists.infradead.org X-Gm-Message-State: AOJu0YwNXAmiZRWtvKdax6W4bU8OrTyRPe2V4H7+ge9+2rscHqm4+sAJ 2GX9DU/PSwXUwIURGBa9o9IbEVj3IRcTvBkaN+n7QHjLl0OJMYb10FIz X-Gm-Gg: Acq92OG3mfU2BJjU+Lb/GISTkBsgUfjMUEN5t2V0Ra0aiYmOcUGQHWhuKUug4t/FV1D eGkqxhCk9JgZlu8bKVItaqafwdwfApvwMBuzIpoCEsZ9W0X2q9I8fDJ085VWfzuAPSqel00QQOW 3/QSyG+khrN004ZSuVkVo9e5NNH0VrdJYkKp7M/TeZiuOsS0RXupgi1ql0jtAGvVpcRKG01t7co Pg05Jn43t0fPAW12xGYl22eIYGY5+jsAzMYGlIWvBY/S2+EtJYqjVJ7Xda1P1LoyW4USXldnnUs Zu1Y5NeXqbTKQxg7hP24+hkGDq6Z0q0zMFtQoFLqFCkZandDIHCxy/BeSpvPbQymituZi7Mx/aT rD/nq0wVOhpPX3l0sB9wdQwJbj0Yvxa56w6KLz3X16Sw/ROojgXA7MDnOnCWxoSfVOHp9iww/sf pVEsCycwr3I1zUz61kM6MVnc7ERn1wzrvTAU291Bn7QPDqZEh+kvKa7SEKFW2EOYMplMwn/Hx6l fi1ikAy8WV6OaVaRApXvgsZpLRZNVrayow= X-Received: by 2002:a17:903:41c9:b0:2bd:5ab:af95 with SMTP id d9443c01a7336-2beb023584amr219157495ad.0.1779842761021; Tue, 26 May 2026 17:46:01 -0700 (PDT) Received: from ryzen ([2601:644:8000:5b5d:7285:c2ff:fe45:8a32]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2beb58b2ea3sm138552635ad.43.2026.05.26.17.45.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 May 2026 17:46:00 -0700 (PDT) From: Rosen Penev To: linux-input@vger.kernel.org Cc: Dmitry Torokhov , Matthias Brugger , AngeloGioacchino Del Regno , linux-kernel@vger.kernel.org (open list:ARM/Mediatek SoC support), linux-arm-kernel@lists.infradead.org (moderated list:ARM/Mediatek SoC support), linux-mediatek@lists.infradead.org (moderated list:ARM/Mediatek SoC support) Subject: [PATCH] Input: mtk-pmic-keys - match loop with count Date: Tue, 26 May 2026 17:45:43 -0700 Message-ID: <20260527004543.22875-1-rosenp@gmail.com> X-Mailer: git-send-email 2.54.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260526_174602_388866_A608FCAD X-CRM114-Status: GOOD ( 11.38 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org of_get_available_child_count is used along with for_each_child_of_node_scoped, which can cause a mismatch when keys have a disabled status. If a disabled child node exists in the device tree alongside available ones, the loop could execute more times than the initial validation accounted for. This might increment the index variable past the allocated array bounds, leading to out-of-bounds accesses on irqnames[] and keys->keys[]. Signed-off-by: Rosen Penev --- drivers/input/keyboard/mtk-pmic-keys.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/keyboard/mtk-pmic-keys.c b/drivers/input/keyboard/mtk-pmic-keys.c index c78d9f6d97c4..5d4ebbafd276 100644 --- a/drivers/input/keyboard/mtk-pmic-keys.c +++ b/drivers/input/keyboard/mtk-pmic-keys.c @@ -363,7 +363,7 @@ static int mtk_pmic_keys_probe(struct platform_device *pdev) return -EINVAL; } - for_each_child_of_node_scoped(node, child) { + for_each_available_child_of_node_scoped(node, child) { keys->keys[index].regs = &mtk_pmic_regs->keys_regs[index]; keys->keys[index].irq = -- 2.54.0