REDHAT-BUG-2347781: Null Pointer Dereference

Published Feb 26, 2025
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

powerpc/paprscm: don't requests stats with '0' sized stats buffer

Sachin reported [1] that on a POWER-10 lpar he is seeing a kernel panic being reported with vPMEM when paprscm probe is being called. The panic is of the form below and is observed only with following option disabled(profile) for the said LPAR 'Enable Performance Information Collection' in the HMC:

Kernel attempted to write user page (1c) - exploit attempt? (uid: 0) BUG: Kernel NULL pointer dereference on write at 0x0000001c Faulting instruction address: 0xc008000001b90844 Oops: Kernel access of bad area, sig: 11 [#1] <snip> NIP [c008000001b90844] drcpmemquerystats+0x5c/0x270 [paprscm] LR [c008000001b92794] paprscmprobe+0x2ac/0x6ec [paprscm] Call Trace: 0xc00000000941bca0 (unreliable) paprscmprobe+0x2ac/0x6ec [paprscm] platformprobe+0x98/0x150 reallyprobe+0xfc/0x510 driverprobedevice+0x17c/0x230 <snip> ---[ end trace 0000000000000000 ]--- Kernel panic - not syncing: Fatal exception

On investigation looks like this panic was caused due to a 'statbuffer' of size==0 being provided to drcpmemquerystats() to fetch all performance stats-ids of an NVDIMM. However drcpmemquerystats() shouldn't have been called since the vPMEM NVDIMM doesn't support and performance stat-id's. This was caused due to missing check for 'p->statbufferlen' at the beginning of paprscmpmucheckevents() which indicates that the NVDIMM doesn't support performance-stats.

Fix this by introducing the check for 'p->statbufferlen' at the beginning of paprscmpmucheckevents().

[1] https://lore.kernel.org/all/6B3A522A-6A5F-4CC9-B268-0C63AA6E07D3@linux.ibm.com

Affected Software

1 affected component
Linux Kernel

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Ensure the HMC LPAR option "Enable Performance Information Collection" is disabled for the affected vPMEM/LPAR, since the issue occurs only with that option disabled and leads to papr_scm probe requesting stats with a 0-sized stats buffer.

    powerpc/papr_scm (papr_scm) Enable Performance Information Collection (HMC LPAR setting) = disabled
  2. Configuration

    Implement the missing check for 'p->stat_buffer_len' at the beginning of drc_pmem_query_stats(), and do not request stats when the provided stats buffer size is 0 ("powerpc/papr_scm: don't requests stats with '0' sized stats buffer").

    powerpc/papr_scm (drc_pmem_query_stats / papr_scm_probe) stat_buffer_len check = required
  3. Compensating control

    If "Enable Performance Information Collection" cannot be changed, avoid triggering papr_scm probing paths that call drc_pmem_query_stats() with size==0 by ensuring the vPMEM/papr_scm performance-stats collection is not requested when NVDIMM performance stats are unsupported (as observed for vPMEM where the NVDIMM doesn't support papr_scm_pmu_check_events()).

Event History

Feb 26, 2025
Data Sourced
via Red Hat·03:06 AM
DescriptionSeverityAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of REDHAT-BUG-2347781?

The severity of REDHAT-BUG-2347781 is critical due to the potential for kernel panic in affected systems.

2

How do I fix REDHAT-BUG-2347781?

To fix REDHAT-BUG-2347781, apply the latest kernel updates provided by your Linux distribution.

3

What systems are affected by REDHAT-BUG-2347781?

REDHAT-BUG-2347781 affects Linux kernel versions running on POWER-10 architectures.

4

What is the impact of REDHAT-BUG-2347781?

The impact of REDHAT-BUG-2347781 includes potential system instability and kernel panics during specific operations.

5

Who reported REDHAT-BUG-2347781?

REDHAT-BUG-2347781 was reported by Sachin.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203