CVE-2026-31420
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
bridge: mrp: reject zero test interval to avoid OOM panic
br_mrp_start_test() and br_mrp_start_in_test() accept the user-supplied interval value from netlink without validation. When interval is 0, usecs_to_jiffies(0) yields 0, causing the delayed work (br_mrp_test_work_expired / br_mrp_in_test_work_expired) to reschedule itself with zero delay. This creates a tight loop on system_percpu_wq that allocates and transmits MRP test frames at maximum rate, exhausting all system memory and causing a kernel panic via OOM deadlock.
The same zero-interval issue applies to br_mrp_start_in_test_parse() for interconnect test frames.
Use NLA_POLICY_MIN(NLA_U32, 1) in the nla_policy tables for both IFLA_BRIDGE_MRP_START_TEST_INTERVAL and IFLA_BRIDGE_MRP_START_IN_TEST_INTERVAL, so zero is rejected at the netlink attribute parsing layer before the value ever reaches the workqueue scheduling code. This is consistent with how other bridge subsystems (br_fdb, br_mst) enforce range constraints on netlink attributes.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 20f6a05ef63594feb0c6dfbd629da0448b43124d < 630a15a31c2034b5b697f4aabc769b9d80d82446 | affected |
| Linux | Linux | 20f6a05ef63594feb0c6dfbd629da0448b43124d < e8ec80430bfa520e7352155d6ac632e527cba7aa | affected |
| Linux | Linux | 20f6a05ef63594feb0c6dfbd629da0448b43124d < c9bc352f716d1bebfe43354bce539ec2d0223b30 | affected |
| Linux | Linux | 20f6a05ef63594feb0c6dfbd629da0448b43124d < fa6e24963342de4370e3a3c9af41e38277b74cf3 | affected |
| Linux | Linux | 5.8 | affected |
| Linux | Linux | 0 < 5.8 | unaffected |
| Linux | Linux | 6.12.92 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.34 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.12 <= 6.19.* | unaffected |
| Linux | Linux | 7.0 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/630a15a31c2034b5b697f4aabc769b9d80d82446
- https://git.kernel.org/stable/c/e8ec80430bfa520e7352155d6ac632e527cba7aa
- https://git.kernel.org/stable/c/c9bc352f716d1bebfe43354bce539ec2d0223b30
- https://git.kernel.org/stable/c/fa6e24963342de4370e3a3c9af41e38277b74cf3
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.