CVE-2026-31550: pmdomain: bcm: bcm2835-power: Increase ASB control timeout

Published Apr 24, 2026
·
Updated

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

pmdomain: bcm: bcm2835-power: Increase ASB control timeout

The bcm2835asbcontrol() function uses a tight polling loop to wait for the ASB bridge to acknowledge a request. During intensive workloads, this handshake intermittently fails for V3D's master ASB on BCM2711, resulting in "Failed to disable ASB master for v3d" errors during runtime PM suspend. As a consequence, the failed power-off leaves V3D in a broken state, leading to bus faults or system hangs on later accesses.

As the timeout is insufficient in some scenarios, increase the polling timeout from 1us to 5us, which is still negligible in the context of a power domain transition. Also, replace the open-coded ktimegetns()/ cpurelax() polling loop with readlpolltimeoutatomic().

Affected Software

17 affected componentsFixes available
Linux Linux kernel (bcm2835-power)
Linux Linux kernel>=5.1.1<5.10.253
Linux Linux kernel>=5.11<5.15.203
Linux Linux kernel>=5.16<6.1.167
Linux Linux kernel>=6.2<6.6.130
Linux Linux kernel>=6.7<6.12.78
Linux Linux kernel>=6.13<6.18.20
Linux Linux kernel>=6.19<6.19.10
Linux Linux kernel=5.1
Linux Linux kernel=7.0-rc1
Linux Linux kernel=7.0-rc2
Linux Linux kernel=7.0-rc3
Linux Linux kernel=7.0-rc4
Linux Linux kernel=7.0-rc5
Linux Linux kernel=7.0-rc6
Linux Linux kernel=7.0-rc7
debian/linux
6.1.176-16.1.190-16.12.107-16.12.115-27.2.12-17.2.15-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade debian/linux to a version that resolves this vulnerability.

    Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.113-1Fixed in 7.2.12-1Fixed in 7.2.13-1
  2. Configuration

    Replace the open-coded ktime_get_ns()/cpu_relax() polling loop in bcm2835_asb_control() with readl_poll_timeout_atomic(), and increase the polling timeout from 1us to 5us.

    Linux kernel bcm2835-power ASB control polling timeout and mechanism = 5us; readl_poll_timeout_atomic()

Event History

Apr 24, 2026
CVE Published
via MITRE·02:33 PM
Data Sourced
via MITRE·02:33 PM
Description
Data Sourced
via NVD·03:16 PM
RemedyDescriptionSeverityAffected Software
Apr 29, 2026
Data Sourced
via Microsoft·08:02 AM
DescriptionSeverityWeakness

Parent advisories

This vulnerability appears in the following advisories.

Peer vulnerabilities

Found alongside the following vulnerabilities.

Frequently Asked Questions

1

Which systems are most likely to experience this issue?

The issue is associated with the V3D master ASB on BCM2711 systems. It occurs intermittently during intensive workloads when runtime power management attempts to suspend V3D.

2

How can I tell whether a system has encountered the problem?

Look for the kernel error "Failed to disable ASB master for v3d" during runtime PM suspend. Subsequent V3D accesses may then produce bus faults or cause system hangs.

3

What change resolves the failure?

The resolved kernel change increases the ASB control polling timeout from 1 microsecond to 5 microseconds and uses readl_poll_timeout_atomic() for the polling loop. Applying a Linux kernel update containing this change addresses the insufficient timeout.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203