CVE-2026-23230
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
smb: client: split cached_fid bitfields to avoid shared-byte RMW races
is_open, has_lease and on_list are stored in the same bitfield byte in
struct cached_fid but are updated in different code paths that may run
concurrently. Bitfield assignments generate byte read–modify–write
operations (e.g. orb $mask, addr on x86_64), so updating one flag can
restore stale values of the others.
A possible interleaving is: CPU1: load old byte (has_lease=1, on_list=1) CPU2: clear both flags (store 0) CPU1: RMW store (old | IS_OPEN) -> reintroduces cleared bits
To avoid this class of races, convert these flags to separate bool fields.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | ebe98f1447bbccf8228335c62d86af02a0ed23f7 < 569fecc56bfe4df66f05734d67daef887746656b | affected |
| Linux | Linux | ebe98f1447bbccf8228335c62d86af02a0ed23f7 < 4386f6af8aaedd0c5ad6f659b40cadcc8f423828 | affected |
| Linux | Linux | ebe98f1447bbccf8228335c62d86af02a0ed23f7 < 3eaa22d688311c708b73f3c68bc6d0c8e3f0f77a | affected |
| Linux | Linux | ebe98f1447bbccf8228335c62d86af02a0ed23f7 < c4b9edd55987384a1f201d3d07ff71e448d79c1b | affected |
| Linux | Linux | ebe98f1447bbccf8228335c62d86af02a0ed23f7 < 4cfa4c37dcbcfd70866e856200ed8a2894cac578 | affected |
| Linux | Linux | ebe98f1447bbccf8228335c62d86af02a0ed23f7 < ec306600d5ba7148c9dbf8f5a8f1f5c1a044a241 | affected |
| Linux | Linux | 6.1 | affected |
| Linux | Linux | 0 < 6.1 | unaffected |
| Linux | Linux | 6.1.164 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.125 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.72 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.11 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.1 <= 6.19.* | unaffected |
| Linux | Linux | 7.0 <= * | unaffected |
Weaknesses
ADP Enrichment
Additional References
References
- https://git.kernel.org/stable/c/569fecc56bfe4df66f05734d67daef887746656b
- https://git.kernel.org/stable/c/4386f6af8aaedd0c5ad6f659b40cadcc8f423828
- https://git.kernel.org/stable/c/3eaa22d688311c708b73f3c68bc6d0c8e3f0f77a
- https://git.kernel.org/stable/c/c4b9edd55987384a1f201d3d07ff71e448d79c1b
- https://git.kernel.org/stable/c/4cfa4c37dcbcfd70866e856200ed8a2894cac578
- https://git.kernel.org/stable/c/ec306600d5ba7148c9dbf8f5a8f1f5c1a044a241
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.