CVE-2025-39923

In the Linux kernel, the following vulnerability has been resolved:

dmaengine: qcom: bam_dma: Fix DT error handling for num-channels/ees

When we don't have a clock specified in the device tree, we have no way to
ensure the BAM is on. This is often the case for remotely-controlled or
remotely-powered BAM instances. In this case, we need to read num-channels
from the DT to have all the necessary information to complete probing.

However, at the moment invalid device trees without clock and without
num-channels still continue probing, because the error handling is missing
return statements. The driver will then later try to read the number of
channels from the registers. This is unsafe, because it relies on boot
firmware and lucky timing to succeed. Unfortunately, the lack of proper
error handling here has been abused for several Qualcomm SoCs upstream,
causing early boot crashes in several situations [1, 2].

Avoid these early crashes by erroring out when any of the required DT
properties are missing. Note that this will break some of the existing DTs
upstream (mainly BAM instances related to the crypto engine). However,
clearly these DTs have never been tested properly, since the error in the
kernel log was just ignored. It's safer to disable the crypto engine for
these broken DTBs.

[1]: https://lore.kernel.org/r/CY01EKQVWE36.B9X5TDXAREPF@fairphone.com/
[2]: https://lore.kernel.org/r/20230626145959.646747-1-krzysztof.kozlowski@linaro.org/
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTNIST
UNKNOWN
---
LinuxCNA
---
---
CVEADP
---
---
Awaiting analysis
This vulnerability is currently awaiting analysis.
Base Score
CVSS 3.x
EPSS Score
Percentile: 14%
Debian logo
Debian Releases
Debian Product
Codename
linux
bullseye
vulnerable
bullseye (security)
vulnerable
bookworm
vulnerable
bookworm (security)
6.1.158-1
fixed
trixie
6.12.57-1
fixed
trixie (security)
6.12.48-1
fixed
forky
6.16.12-2
fixed
sid
6.17.8-1
fixed
linux-6.1
bullseye (security)
6.1.153-1~deb11u1
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
linux
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
xenial
needs-triage
trusty
needs-triage
linux-hwe
plucky
dne
noble
dne
jammy
dne
bionic
ignored
xenial
needs-triage
linux-hwe-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-hwe-5.8
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-hwe-5.11
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-hwe-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-hwe-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-hwe-5.19
plucky
dne
noble
dne
jammy
ignored
linux-hwe-6.2
plucky
dne
noble
dne
jammy
ignored
linux-hwe-6.5
plucky
dne
noble
dne
jammy
ignored
linux-hwe-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-hwe-6.11
plucky
dne
noble
ignored
jammy
dne
linux-hwe-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-hwe-edge
plucky
dne
noble
dne
jammy
dne
bionic
ignored
xenial
ignored
linux-lts-xenial
plucky
dne
noble
dne
jammy
dne
trusty
needs-triage
linux-kvm
plucky
dne
noble
dne
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
xenial
needs-triage
linux-allwinner-5.19
plucky
dne
noble
dne
jammy
ignored
linux-aws
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
xenial
needs-triage
trusty
needs-triage
linux-aws-5.0
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-aws-5.3
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-aws-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-aws-5.8
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-aws-5.11
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-aws-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-aws-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-aws-5.19
plucky
dne
noble
dne
jammy
ignored
linux-aws-6.2
plucky
dne
noble
dne
jammy
ignored
linux-aws-6.5
plucky
dne
noble
dne
jammy
ignored
linux-aws-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-aws-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-aws-hwe
plucky
dne
noble
dne
jammy
dne
xenial
needs-triage
linux-azure
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
focal
needs-triage
bionic
ignored
xenial
needs-triage
trusty
needs-triage
linux-azure-4.15
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-azure-5.3
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-azure-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-azure-5.8
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-azure-5.11
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-azure-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-azure-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-azure-5.19
plucky
dne
noble
dne
jammy
ignored
linux-azure-6.2
plucky
dne
noble
dne
jammy
ignored
linux-azure-6.5
plucky
dne
noble
dne
jammy
ignored
linux-azure-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-azure-6.11
plucky
dne
noble
ignored
jammy
dne
linux-azure-fde
plucky
needs-triage
noble
dne
jammy
needs-triage
focal
ignored
linux-azure-fde-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-azure-fde-5.19
plucky
dne
noble
dne
jammy
ignored
linux-azure-fde-6.2
plucky
dne
noble
dne
jammy
ignored
linux-azure-nvidia
plucky
dne
noble
needs-triage
jammy
dne
linux-bluefield
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-azure-edge
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-fips
plucky
dne
noble
dne
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
xenial
needs-triage
linux-aws-fips
plucky
dne
noble
dne
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
linux-azure-fips
plucky
dne
noble
dne
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
linux-gcp-fips
plucky
dne
noble
dne
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
linux-gcp
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
focal
needs-triage
bionic
ignored
xenial
needs-triage
linux-gcp-4.15
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-gcp-5.3
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-gcp-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-gcp-5.8
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-gcp-5.11
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-gcp-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-gcp-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-gcp-5.19
plucky
dne
noble
dne
jammy
ignored
linux-gcp-6.2
plucky
dne
noble
dne
jammy
ignored
linux-gcp-6.5
plucky
dne
noble
dne
jammy
ignored
linux-gcp-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-gcp-6.11
plucky
dne
noble
ignored
jammy
dne
linux-gcp-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-gke
plucky
dne
noble
needs-triage
jammy
needs-triage
focal
ignored
linux-gke-4.15
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-gke-5.4
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-gke-5.15
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-gkeop
plucky
dne
noble
needs-triage
jammy
needs-triage
focal
ignored
linux-gkeop-5.4
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-gkeop-5.15
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-ibm
plucky
dne
noble
needs-triage
jammy
needs-triage
focal
needs-triage
linux-ibm-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-ibm-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-ibm-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-intel-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-intel-iotg
plucky
dne
noble
dne
jammy
needs-triage
linux-intel-iotg-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-iot
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-intel-iot-realtime
plucky
dne
noble
dne
jammy
needs-triage
linux-lowlatency
plucky
dne
noble
needs-triage
jammy
needs-triage
linux-lowlatency-hwe-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-lowlatency-hwe-5.19
plucky
dne
noble
dne
jammy
ignored
linux-lowlatency-hwe-6.2
plucky
dne
noble
dne
jammy
ignored
linux-lowlatency-hwe-6.5
plucky
dne
noble
dne
jammy
ignored
linux-lowlatency-hwe-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-lowlatency-hwe-6.11
plucky
dne
noble
ignored
jammy
dne
linux-nvidia
plucky
dne
noble
needs-triage
jammy
needs-triage
linux-nvidia-6.2
plucky
dne
noble
dne
jammy
ignored
linux-nvidia-6.5
plucky
dne
noble
dne
jammy
ignored
linux-nvidia-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-nvidia-6.11
plucky
dne
noble
needs-triage
jammy
dne
linux-nvidia-lowlatency
plucky
dne
noble
needs-triage
jammy
dne
linux-nvidia-tegra
plucky
dne
noble
needs-triage
jammy
needs-triage
linux-nvidia-tegra-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-nvidia-tegra-igx
plucky
dne
noble
dne
jammy
needs-triage
linux-oracle
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
focal
needs-triage
bionic
needs-triage
xenial
needs-triage
linux-oracle-5.0
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-oracle-5.3
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-oracle-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-oracle-5.8
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oracle-5.11
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oracle-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oracle-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-oracle-6.5
plucky
dne
noble
dne
jammy
ignored
linux-oracle-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-oracle-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-oem
plucky
dne
noble
dne
jammy
dne
bionic
ignored
linux-oem-5.6
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oem-5.10
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oem-5.13
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oem-5.14
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-oem-5.17
plucky
dne
noble
dne
jammy
ignored
linux-oem-6.0
plucky
dne
noble
dne
jammy
ignored
linux-oem-6.1
plucky
dne
noble
dne
jammy
ignored
linux-oem-6.5
plucky
dne
noble
dne
jammy
ignored
linux-oem-6.8
plucky
dne
noble
needs-triage
jammy
dne
linux-oem-6.11
plucky
dne
noble
needs-triage
jammy
dne
linux-oem-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-raspi
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
focal
needs-triage
linux-raspi2
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-raspi-5.4
plucky
dne
noble
dne
jammy
dne
bionic
needs-triage
linux-raspi-realtime
plucky
dne
noble
needs-triage
jammy
dne
linux-realtime
plucky
needs-triage
noble
needs-triage
jammy
needs-triage
linux-realtime-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-realtime-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-riscv
plucky
needs-triage
noble
ignored
jammy
ignored
focal
ignored
linux-riscv-5.8
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-riscv-5.11
plucky
dne
noble
dne
jammy
dne
focal
ignored
linux-riscv-5.15
plucky
dne
noble
dne
jammy
dne
focal
needs-triage
linux-riscv-5.19
plucky
dne
noble
dne
jammy
ignored
linux-riscv-6.5
plucky
dne
noble
dne
jammy
ignored
linux-riscv-6.8
plucky
dne
noble
dne
jammy
needs-triage
linux-riscv-6.14
plucky
dne
noble
needs-triage
jammy
dne
linux-starfive-5.19
plucky
dne
noble
dne
jammy
ignored
linux-starfive-6.2
plucky
dne
noble
dne
jammy
ignored
linux-starfive-6.5
plucky
dne
noble
dne
jammy
ignored
linux-xilinx-zynqmp
plucky
dne
noble
dne
jammy
needs-triage
focal
needs-triage