[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025081653-CVE-2025-38516-65d2@gregkh>
Date: Sat, 16 Aug 2025 12:57:58 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...nel.org>
Subject: CVE-2025-38516: pinctrl: qcom: msm: mark certain pins as invalid for interrupts
From: Greg Kroah-Hartman <gregkh@...nel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
pinctrl: qcom: msm: mark certain pins as invalid for interrupts
On some platforms, the UFS-reset pin has no interrupt logic in TLMM but
is nevertheless registered as a GPIO in the kernel. This enables the
user-space to trigger a BUG() in the pinctrl-msm driver by running, for
example: `gpiomon -c 0 113` on RB2.
The exact culprit is requesting pins whose intr_detection_width setting
is not 1 or 2 for interrupts. This hits a BUG() in
msm_gpio_irq_set_type(). Potentially crashing the kernel due to an
invalid request from user-space is not optimal, so let's go through the
pins and mark those that would fail the check as invalid for the irq chip
as we should not even register them as available irqs.
This function can be extended if we determine that there are more
corner-cases like this.
The Linux kernel CVE team has assigned CVE-2025-38516 to this issue.
Affected and fixed versions
===========================
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 5.4.296 with commit 6a89563ccf9cd0d745e2291302878a061508573f
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 5.10.240 with commit 3f8fc02c2582c1dfad1785e9c7bc8b4e1521af0a
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 5.15.189 with commit cb4b08a095b1fa4b3fca782757517e4e9a917d8e
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 6.1.146 with commit cc145e02d6b8494c48f91958d52fa76b7e577f7b
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 6.6.99 with commit 1d57f7132662e96aace3b8a000616efde289aae1
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 6.12.39 with commit 275605a8b48002fe98675a5c06f3e39c09067ff2
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 6.15.7 with commit 97c9c7daeeb00c6e1d5e84084041f79c2d2dce22
Issue introduced in 3.14 with commit f365be0925729508fd8e62f8bdb504ef896cb6e0 and fixed in 6.16 with commit 93712205ce2f1fb047739494c0399a26ea4f0890
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2025-38516
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
drivers/pinctrl/qcom/pinctrl-msm.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/6a89563ccf9cd0d745e2291302878a061508573f
https://git.kernel.org/stable/c/3f8fc02c2582c1dfad1785e9c7bc8b4e1521af0a
https://git.kernel.org/stable/c/cb4b08a095b1fa4b3fca782757517e4e9a917d8e
https://git.kernel.org/stable/c/cc145e02d6b8494c48f91958d52fa76b7e577f7b
https://git.kernel.org/stable/c/1d57f7132662e96aace3b8a000616efde289aae1
https://git.kernel.org/stable/c/275605a8b48002fe98675a5c06f3e39c09067ff2
https://git.kernel.org/stable/c/97c9c7daeeb00c6e1d5e84084041f79c2d2dce22
https://git.kernel.org/stable/c/93712205ce2f1fb047739494c0399a26ea4f0890
Powered by blists - more mailing lists