CVE-2026-93261
N/A
Summary
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.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < f6093ff67ea6e347574819ed23e96e0f82a25ffc | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < 59a5c7dd331a3dab48100e1ef8e9bb4f9132a2b2 | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < f56e54fd24f05e9de528fcb77f6084f80c8066ce | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < 5c3bff6cf26e6a54fbf8b893a879c32824d2d50d | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < b2113dcd8238bf00ce37a34e67b29cf31d32a545 | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < e7c69c6695d84220847cca62a45e879e71e79e9d | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < 9be10f49dfc2e4b472b3a5f346483b67374774b8 | affected |
| Linux | Linux | 64aa348edc617dea17bbd01ddee4e47886d5ec8c < 7577e00b9ab506202b9f1a33de3cc8cc6413a4db | affected |
| Linux | Linux | 2.6.27 | affected |
| Linux | Linux | 0 < 2.6.27 | unaffected |
| Linux | Linux | 5.10.270 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.221 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.188 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.157 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.110 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.52 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.6 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/f6093ff67ea6e347574819ed23e96e0f82a25ffc
- https://git.kernel.org/stable/c/59a5c7dd331a3dab48100e1ef8e9bb4f9132a2b2
- https://git.kernel.org/stable/c/f56e54fd24f05e9de528fcb77f6084f80c8066ce
- https://git.kernel.org/stable/c/5c3bff6cf26e6a54fbf8b893a879c32824d2d50d
- https://git.kernel.org/stable/c/b2113dcd8238bf00ce37a34e67b29cf31d32a545
- https://git.kernel.org/stable/c/e7c69c6695d84220847cca62a45e879e71e79e9d
- https://git.kernel.org/stable/c/9be10f49dfc2e4b472b3a5f346483b67374774b8
- https://git.kernel.org/stable/c/7577e00b9ab506202b9f1a33de3cc8cc6413a4db
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.