CVE-2026-68129
CVE.org · Published
- Record status
- Published
- Identifier year (not publication year)
- 2026
- Source publication
- Source updated
- Imported by cveboard
- Source snapshot
- cve_2026-10-24_midnight_baseline ·
CNA source text (English)
gve: fix Rx queue stall on alloc failure
In the Linux kernel, the following vulnerability has been resolved: gve: fix Rx queue stall on alloc failure When the system is under extreme memory pressure, page allocations can fail during the Rx buffer refill loop. If the number of buffers posted to hardware falls below a critical low threshold and the refill loop exits due to allocation failures, the queue can stall: 1. The device drops incoming packets because there are no descriptors. 2. Since no packets are processed, no Rx completions are generated. 3. Because no completions occur, NAPI is never scheduled, preventing the refill loop from running again even after memory is freed. This results in a permanent queue stall. Resolve this by introducing a starvation recovery timer for each Rx queue. If the number of buffers posted to hardware falls below a critical low threshold, start a timer to periodically reschedule NAPI. Once NAPI runs and successfully refills the queue above the threshold, the timer is not rescheduled. The threshold is set to 32 because a single maximum-sized Receive Segment Coalescing (RSC) packet can consume up to 19 descriptors in the Rx path. Lower thresholds (such as 8 or 16) would be insufficient to process a complete maximum-sized RSC packet, risking packet drops or unexpected hardware behavior under memory pressure. Setting the threshold to 32 guarantees a safe margin to handle at least one full RSC packet.
Scoped product and version facts
Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.
Exploitation unknown; this catalogue does not assess exploitation.
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
unaffected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | 9db46e19e5d6bdcd4bf811284a5b0df1b984ef80 | Unavailable | None listed |
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | 42d525e751c61b876b2b0ae4e71ba7a8ab0c2777 | Unavailable | None listed |
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | 299d5728a7312fdd02059b074aebbe4ebbd391e4 | Unavailable | None listed |
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | 0c317349b4baa5038d1fc373bf46d5a2419d1710 | Unavailable | None listed |
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | 91e0249f3ef62b75fe8c9c9372eaba32876e4b3a | Unavailable | None listed |
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | 689b9f588d2d7323dc66293fe594a68d030f400f | Unavailable | None listed |
| 9b8dd5e5ea48bbb7532d20c4093a79d8283e4029 | affected | git | b65352a1bac64442ad95e64f385b40ccb9f1b0db | Unavailable | None listed |
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
affected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 5.14 | affected | Unavailable | Unavailable | Unavailable | None listed |
| 0 | unaffected | semver | 5.14 | Unavailable | None listed |
| 5.15.216 | unaffected | semver | Unavailable | 5.15.* | None listed |
| 6.1.183 | unaffected | semver | Unavailable | 6.1.* | None listed |
| 6.6.151 | unaffected | semver | Unavailable | 6.6.* | None listed |
| 6.12.101 | unaffected | semver | Unavailable | 6.12.* | None listed |
| 6.18.42 | unaffected | semver | Unavailable | 6.18.* | None listed |
| 7.1.6 | unaffected | semver | Unavailable | 7.1.* | None listed |
| 7.2 | unaffected | original_commit_for_fix | Unavailable | * | None listed |