CVE-2023-54267: powerpc/pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT
In the Linux kernel, the following vulnerability has been resolved:
powerpc/pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT
lppaca_shared_proc() takes a pointer to the lppaca which is typically
accessed through get_lppaca(). With DEBUG_PREEMPT enabled, this leads
to checking if preemption is enabled, for example:
BUG: using smp_processor_id() in preemptible [00000000] code: grep/10693
caller is lparcfg_data+0x408/0x19a0
CPU: 4 PID: 10693 Comm: grep Not tainted 6.5.0-rc3 #2
Call Trace:
dump_stack_lvl+0x154/0x200 (unreliable)
check_preemption_disabled+0x214/0x220
lparcfg_data+0x408/0x19a0
...
This isn't actually a problem however, as it does not matter which
lppaca is accessed, the shared proc state will be the same.
vcpudispatch_stats_procfs_init() already works around this by disabling
preemption, but the lparcfg code does not, erroring any time
/proc/powerpc/lparcfg is accessed with DEBUG_PREEMPT enabled.
Instead of disabling preemption on the caller side, rework
lppaca_shared_proc() to not take a pointer and instead directly access
the lppaca, bypassing any potential preemption checks.
[mpe: Rework to avoid needing a definition in paca.h and lppaca.h]
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel issue limited to PowerPC pSeries systems. When a debug preemption kernel option is enabled, reading /proc/powerpc/lparcfg can trigger a kernel BUG-style error. The source describes this as an implementation problem around preemption checks, not evidence of data theft or remote compromise.
Executive priority
Handle through normal kernel maintenance unless your estate includes PowerPC pSeries systems with debug-preemption kernels. There is no cited evidence of active exploitation or broad enterprise exposure, but affected infrastructure should still receive vendor-backed kernel updates.
Technical view
lppaca_shared_proc() accepted an lppaca pointer commonly obtained through get_lppaca(). With DEBUG_PREEMPT enabled, that path could call smp_processor_id() in preemptible code when lparcfg was read. The kernel fix reworked lppaca_shared_proc() to avoid caller-side preemption handling and bypass the problematic check.
Likely exposure
Exposure appears limited to Linux on PowerPC pSeries/LPAR environments, especially kernels built with DEBUG_PREEMPT and systems where /proc/powerpc/lparcfg is accessed. The source bundle lists Linux kernel versions and stable fix commits, but does not provide CPEs or distribution package names.
Exploitation context
The bundle does not show KEV listing, active exploitation, public exploit use, or remote attack details. The described trigger is local access to a procfs path on a specific architecture/configuration. Treat exploitation status as unproven.
Researcher notes
The key behavior is a DEBUG_PREEMPT preemption check failure in lparcfg_data via lppaca_shared_proc(). The upstream note says the shared processor state is invariant across lppaca instances, so the fix changes access semantics rather than adding caller-side preemption disabling.
Mitigation direction
Review vendor kernel guidance for CVE-2023-54267 and affected distribution packages.
Update to a kernel containing the referenced stable fix for your release line.
Prioritize PowerPC pSeries systems running DEBUG_PREEMPT-enabled kernels.
If immediate patching is delayed, monitor for lparcfg-related kernel BUG reports.
Validation and detection
Inventory PowerPC pSeries Linux systems and their kernel versions.
Check whether DEBUG_PREEMPT is enabled in deployed kernels.
Verify whether /proc/powerpc/lparcfg exists and is used operationally.
Review kernel logs for smp_processor_id or lparcfg preemption warnings.
Map installed kernels to the vendor advisory or stable commit status.
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-54267 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.