CVE-2026-43502
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
net/rds: handle zerocopy send cleanup before the message is queued
A zerocopy send can fail after user pages have been pinned but before the message is attached to the sending socket.
The purge path currently infers zerocopy state from rm->m_rs, so an unqueued message can be cleaned up as if it owned normal payload pages. However, zerocopy ownership is really determined by the presence of op_mmp_znotifier, regardless of whether the message has reached the socket queue.
Capture op_mmp_znotifier up front in rds_message_purge() and use it as the cleanup discriminator. If the message is already associated with a socket, keep the existing completion path. Otherwise, drop the pinned page accounting directly and release the notifier before putting the payload pages.
This keeps early send failure cleanup consistent with the zerocopy lifetime rules without changing the normal queued completion path.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < e9aefdc5c53fe9aed108c14e3d155710a1bb14c9 | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 46662f7dc59475995609bf3e9d27eb36f4acf26f | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 1e262db7675e27f42c3f3f47d6011855f4454f24 | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 21d70744e6d3bbf9293aa1ee6fba7c53ad75275e | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 3abc8983b2bae3f487f77d9da5527d7d6b210d46 | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 14ef6fd18db2494098b21e0471bf27a1d8e9993e | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 0f5c185fc79a59ee9991234dd6d2a3e5afa6e75b | affected |
| Linux | Linux | 0cebaccef3acbdfbc2d85880a2efb765d2f4e2e3 < 44b550d88b267320459d518c0743a241ab2108fa | affected |
| Linux | Linux | 4.17 | affected |
| Linux | Linux | 0 < 4.17 | unaffected |
| Linux | Linux | 5.10.258 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.209 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.175 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.140 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.88 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.30 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.7 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/e9aefdc5c53fe9aed108c14e3d155710a1bb14c9
- https://git.kernel.org/stable/c/46662f7dc59475995609bf3e9d27eb36f4acf26f
- https://git.kernel.org/stable/c/1e262db7675e27f42c3f3f47d6011855f4454f24
- https://git.kernel.org/stable/c/21d70744e6d3bbf9293aa1ee6fba7c53ad75275e
- https://git.kernel.org/stable/c/3abc8983b2bae3f487f77d9da5527d7d6b210d46
- https://git.kernel.org/stable/c/14ef6fd18db2494098b21e0471bf27a1d8e9993e
- https://git.kernel.org/stable/c/0f5c185fc79a59ee9991234dd6d2a3e5afa6e75b
- https://git.kernel.org/stable/c/44b550d88b267320459d518c0743a241ab2108fa
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.