CVE-2026-31552

High

In the Linux kernel, the following vulnerability has been resolved: wifi: wlcore: Return -ENOMEM instead of -EAGAIN if there is not enough headroom Since upstream commit e75665dd0968 ("wifi: wlcore: ensure skb headroom before skb_push"), wl1271_tx_allocate() and with it wl1271_prepare_tx_frame() returns -EAGAIN if pskb_expand_head() fails. However, in wlcore_tx_work_locked(), a return value of -EAGAIN from wl1271_prepare_tx_frame() is interpreted as the aggregation buffer being full. This causes the code to flush the buffer, put the skb back at the head of the queue, and immediately retry the same skb in a tight while loop. Because wlcore_tx_work_locked() holds wl->mutex, and the retry happens immediately with GFP_ATOMIC, this will result in an infinite loop and a CPU soft lockup. Return -ENOMEM instead so the packet is dropped and the loop terminates. The problem was found by an experimental code review agent based on gemini-3.1-pro while reviewing backports into v6.18.y.

Package Linux Kernel
Published 2026-04-24
Last modified 2026-04-27
CVSS version 3.1
Patch available
Yes

CVSS 3.1 score

7.5

out of 10
High
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
High
Vector string
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Weakness type

CWE-835

CVE-2026-31552 is a Infinite Loop vulnerability

What is Infinite Loop?

The product contains an iteration that does not exit even when it should. Learn more on MITRE CWE

Affected versions

Linux kernel versions 5.10.250, 5.15.200, 6.1.163, 6.6.124, 6.12.70, 6.18.10, 6.19 and later are affected. Fixed in 5.10.253, 5.15.203, 6.1.167, 6.6.130, 6.12.78, 6.18.20, 6.19.10, 7.0 and their respective stable series.

Affected from
≥ 5.10.250 ≥ 5.15.200 ≥ 6.1.163 ≥ 6.6.124 ≥ 6.12.70 ≥ 6.18.10 ≥ 6.19
Fixed in
✓ 5.10.253 5.10.x ✓ 5.15.203 5.15.x ✓ 6.1.167 6.1.x ✓ 6.6.130 6.6.x ✓ 6.12.78 6.12.x ✓ 6.18.20 6.18.x ✓ 6.19.10 6.19.x ✓ 7.0

References

The following references provide additional information about CVE-2026-31552 including vendor advisories, patch commits, exploit details, and third-party analysis. Links are sourced from the NIST NVD database.

Frequently asked questions

  • What is CVE-2026-31552?

    CVE-2026-31552 is a High severity Linux kernel vulnerability with a CVSS score of 7.5 out of 10 , classified as an Infinite Loop flaw (CWE-835) . It affects Linux kernel versions from 5.10.250 onward and has been patched in 5.10.253, 5.15.203, 6.1.167 and others. CVE-2026-31552 has not been confirmed as actively exploited and is not listed in the CISA KEV catalog.

  • What is the CVSS score for CVE-2026-31552?

    CVE-2026-31552 has a CVSS score of 7.5 out of 10, rated High severity (CVSS 3.1). The vector string is CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H .

  • Is there a patch available for CVE-2026-31552?

    Yes — CVE-2026-31552 has been patched. Fixed versions include 5.10.253, 5.15.203, 6.1.167 and others. If you are running Linux kernel 5.10.250 or later up to the fix versions, apply the relevant patch for your kernel branch.

  • Is CVE-2026-31552 actively exploited?

    No — CVE-2026-31552 has not been confirmed as actively exploited. It is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.

  • What is Infinite Loop (CWE-835)?

    The product contains an iteration that does not exit even when it should. View CWE-835 on MITRE CWE →