In the Linux kernel, the following vulnerability has been resolved: SUNRPC: Check svc pool percpu counter allocation __svc_create() initializes… (CVE-2026-89547)
A vulnerability in the Linux kernel's SUNRPC service was resolved involving improper handling of per-CPU counter allocations during RPC server startup. The __svc_create() function failed to check allocation results, potentially leaving counters uninitialized and causing silent memory corruption or kernel lock errors. This issue requires local administrator access and memory pressure or fault injection to trigger, as remote attackers cannot induce the faulty state. The fix involves checking allocation return values and properly cleaning up on failure.
AI Analysis
Technical Summary
The Linux kernel's SUNRPC subsystem had a vulnerability where __svc_create() initialized three per-pool percpu_counter stats but ignored their allocation return values. On SMP systems, if percpu_counter_init() failed due to __alloc_percpu_gfp() allocation failure, the counter's internal pointers remained NULL and associated locks and counts were uninitialized. Despite this, __svc_create() returned a partially constructed svc_serv object to services like nfsd or lockd. Subsequent hot-path increments accessed a NULL backing pointer, which did not fault but corrupted unrelated per-CPU memory or caused kernel lock debugging failures. This flaw can only be triggered locally by an administrator under memory pressure or fault injection during RPC server startup. The patch ensures each percpu_counter_init() return is checked, failing the service creation on allocation failure and properly destroying any partially initialized counters.
Potential Impact
The vulnerability can cause silent corruption of per-CPU memory or kernel lock errors, potentially destabilizing the kernel or causing incorrect behavior in RPC services such as nfsd or lockd. Exploitation requires local administrator privileges and specific memory pressure conditions, so remote exploitation is not possible. There are no known exploits in the wild.
Mitigation Recommendations
A fix has been implemented that checks the return values of percpu_counter_init() in __svc_create() and properly unwinds partially initialized counters on failure. Systems should apply the official kernel patch once available. Until then, the issue can only be triggered locally under memory pressure, limiting exposure.
In the Linux kernel, the following vulnerability has been resolved: SUNRPC: Check svc pool percpu counter allocation __svc_create() initializes… (CVE-2026-89547)
Description
A vulnerability in the Linux kernel's SUNRPC service was resolved involving improper handling of per-CPU counter allocations during RPC server startup. The __svc_create() function failed to check allocation results, potentially leaving counters uninitialized and causing silent memory corruption or kernel lock errors. This issue requires local administrator access and memory pressure or fault injection to trigger, as remote attackers cannot induce the faulty state. The fix involves checking allocation return values and properly cleaning up on failure.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Linux kernel's SUNRPC subsystem had a vulnerability where __svc_create() initialized three per-pool percpu_counter stats but ignored their allocation return values. On SMP systems, if percpu_counter_init() failed due to __alloc_percpu_gfp() allocation failure, the counter's internal pointers remained NULL and associated locks and counts were uninitialized. Despite this, __svc_create() returned a partially constructed svc_serv object to services like nfsd or lockd. Subsequent hot-path increments accessed a NULL backing pointer, which did not fault but corrupted unrelated per-CPU memory or caused kernel lock debugging failures. This flaw can only be triggered locally by an administrator under memory pressure or fault injection during RPC server startup. The patch ensures each percpu_counter_init() return is checked, failing the service creation on allocation failure and properly destroying any partially initialized counters.
Potential Impact
The vulnerability can cause silent corruption of per-CPU memory or kernel lock errors, potentially destabilizing the kernel or causing incorrect behavior in RPC services such as nfsd or lockd. Exploitation requires local administrator privileges and specific memory pressure conditions, so remote exploitation is not possible. There are no known exploits in the wild.
Mitigation Recommendations
A fix has been implemented that checks the return values of percpu_counter_init() in __svc_create() and properly unwinds partially initialized counters on failure. Systems should apply the official kernel patch once available. Until then, the issue can only be triggered locally under memory pressure, limiting exposure.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-qf5h-qr5q-g3pc
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-89547"]
Threat ID: 6aa4a01255bf5e2cf5a866ba
Added to database: 09/12/2026, 00:42:58 UTC
Last enriched: 09/12/2026, 01:08:09 UTC
Last updated: 09/12/2026, 01:08:09 UTC
Views: 2
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.