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

locking/lockdep: Fix NULL pointer dereference in __lock_set_class()

register_lock_class() can return NULL when the lock class pool is
exhausted, graph_lock() fails, or key validation fails. However,
__lock_set_class() uses the return value directly in pointer arithmetic
without a NULL check:

class = register_lock_class(lock, subclass, 0);
hlock->class_idx = class - lock_classes;

If class is NULL, this computes a wild offset that corrupts
hlock->class_idx. The subsequent reacquire_held_locks() call will
invoke hlock_class() with this corrupted index, leading to a NULL or
out-of-bounds pointer dereference.

Add the missing NULL check, consistent with how __lock_acquire() already
handles this case at the same call site.
Published: 2026-09-24
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Kernel memory corruption leading to crash or possible privilege escalation
Action: Apply Patch
AI Analysis

Impact

The flaw emerges when the lock class registration routine returns a null pointer because the class pool is exhausted, graph_lock fails, or key validation fails. The kernel continues to use this null value directly in pointer arithmetic, corrupting the lock class index. Subsequent lock retrieval operations then dereference an out‑of‑bounds or null pointer, resulting in a kernel crash or, potentially, arbitrary memory corruption that could be leveraged for privilege escalation. The primary weakness is the unchecked null reference.

Affected Systems

The vulnerability affects any Linux kernel that incorporates the lockdep subsystem without this null check, across all mainstream distributions. No specific release version is listed, so any kernel build released prior to the patch could be impacted.

Risk and Exploitability

The CVSS score for this vulnerability is 5.5, indicating moderate severity, while the EPSS score is < 1%, describing a very low probability of exploitation. This flaw requires the register_lock_class function to return NULL—a scenario that depends on resource exhaustion or module interaction—making exploitation challenging. The most probable attack vector is local, requiring attacker control over the kernel or the ability to influence its lock usage patterns.

Generated by OpenCVE AI on October 1, 2026 at 23:10 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the system kernel to a version that includes the patch for the null check in __lock_set_class()
  • Rebuild and install any custom kernel modules against the updated kernel to maintain binary compatibility
  • Configure the system to avoid excessive lock class allocation and monitor for kernel crashes or out‑of‑bounds errors, applying additional hardening measures such as disabling unnecessary lockdep features if feasible

Generated by OpenCVE AI on October 1, 2026 at 23:10 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4817-1 linux-6.12 security update
Debian DSA Debian DSA DSA-6528-1 linux security update
History

Thu, 01 Oct 2026 21:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-690

Tue, 29 Sep 2026 13:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Fri, 25 Sep 2026 08:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-476
CWE-690

Thu, 24 Sep 2026 16:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: locking/lockdep: Fix NULL pointer dereference in __lock_set_class() register_lock_class() can return NULL when the lock class pool is exhausted, graph_lock() fails, or key validation fails. However, __lock_set_class() uses the return value directly in pointer arithmetic without a NULL check: class = register_lock_class(lock, subclass, 0); hlock->class_idx = class - lock_classes; If class is NULL, this computes a wild offset that corrupts hlock->class_idx. The subsequent reacquire_held_locks() call will invoke hlock_class() with this corrupted index, leading to a NULL or out-of-bounds pointer dereference. Add the missing NULL check, consistent with how __lock_acquire() already handles this case at the same call site.
Title locking/lockdep: Fix NULL pointer dereference in __lock_set_class()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-24T15:51:59.638Z

Reserved: 2026-09-17T16:02:15.097Z

Link: CVE-2026-93261

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-24T16:17:22.780

Modified: 2026-09-24T16:17:22.780

Link: CVE-2026-93261

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-24T00:00:00Z

Links: CVE-2026-93261 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T23:15:16Z

Weaknesses