CVE-2023-54268: debugobjects: Don't wake up kswapd from fill_pool()
In the Linux kernel, the following vulnerability has been resolved:
debugobjects: Don't wake up kswapd from fill_pool()
syzbot is reporting a lockdep warning in fill_pool() because the allocation
from debugobjects is using GFP_ATOMIC, which is (__GFP_HIGH | __GFP_KSWAPD_RECLAIM)
and therefore tries to wake up kswapd, which acquires kswapd_wait::lock.
Since fill_pool() might be called with arbitrary locks held, fill_pool()
should not assume that acquiring kswapd_wait::lock is safe.
Use __GFP_HIGH instead and remove __GFP_NORETRY as it is pointless for
!__GFP_DIRECT_RECLAIM allocation.
Security readout for executives and security teams
Plain-English summary
This Linux kernel issue is a locking-safety bug in the debugobjects subsystem. Under some conditions, memory allocation could wake the kernel swap daemon while other locks are held, creating an unsafe lock ordering. The public record provides no CVSS score, CWE, or confirmed exploitation evidence.
Executive priority
Treat this as routine kernel maintenance unless internal evidence shows crashes, lockups, or exposed unmaintained kernels. There is no sourced evidence of active exploitation, but stale kernels should still be remediated through normal patch cycles.
Technical view
fill_pool() in debugobjects used GFP_ATOMIC, which includes __GFP_KSWAPD_RECLAIM and can wake kswapd. Because fill_pool() may run with arbitrary locks held, that wake path can acquire kswapd_wait::lock in an unsafe context. The fix uses __GFP_HIGH and removes a pointless __GFP_NORETRY flag.
Likely exposure
Exposure is limited to Linux systems running affected kernel versions or downstream kernels that have not backported the referenced stable fixes. Practical exposure depends on the exact kernel branch, vendor packaging, and kernel configuration. The source bundle’s affected-version data is incomplete and should be validated against distro advisories.
Exploitation context
The bundle cites a syzbot lockdep warning, not a public exploit. KEV status is false, and no cited source claims active exploitation. The record does not establish impact beyond the unsafe lock acquisition condition.
Researcher notes
The useful signal is the allocator flag change in debugobjects fill_pool(). The source record lacks CVSS, CWE, exploitability analysis, and precise downstream fixed versions. Validate branch-specific status by mapping local kernel sources or packages to the referenced stable commits.
Mitigation direction
Apply Linux distribution kernel updates that include the referenced stable fixes.
If building kernels directly, move to a fixed stable branch containing the relevant commit.
Check vendor advisories before assuming a version string is vulnerable or fixed.
Prioritize systems using custom, old, or unmaintained kernel builds.
Validation and detection
Inventory running kernel versions across Linux fleets.
Compare each kernel package against vendor fixed-version or backport guidance.
Confirm source trees include the relevant referenced stable commit for their branch.
Review kernel logs for related lockdep warnings as supporting evidence.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2023-54268 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
7Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Dec 30, 2025, 12:15 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.