CVE-2026-93261

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

State
Published
Severity
Not scored
Published
Sep 24, 2026
Updated
Oct 19, 2026
Reserved
Sep 17, 2026

Read the record on cve.org

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.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before f6093ff67ea6e347574819ed23e96e0f82a25ffcAffected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before 59a5c7dd331a3dab48100e1ef8e9bb4f9132a2b2Affected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before f56e54fd24f05e9de528fcb77f6084f80c8066ceAffected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before 5c3bff6cf26e6a54fbf8b893a879c32824d2d50dAffected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before b2113dcd8238bf00ce37a34e67b29cf31d32a545Affected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before e7c69c6695d84220847cca62a45e879e71e79e9dAffected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before 9be10f49dfc2e4b472b3a5f346483b67374774b8Affected
  • 64aa348edc617dea17bbd01ddee4e47886d5ec8c to before 7577e00b9ab506202b9f1a33de3cc8cc6413a4dbAffected
LinuxLinux
  • 2.6.27Affected
  • before 2.6.27Not affected
  • 5.10.270 through 5.10.*Not affected
  • 5.15.221 through 5.15.*Not affected
  • 6.1.188 through 6.1.*Not affected
  • 6.6.157 through 6.6.*Not affected
  • 6.12.110 through 6.12.*Not affected
  • 6.18.52 through 6.18.*Not affected
  • 7.2.6 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.