CVE-2026-43216: net: Drop the lock in skb_may_tx_timestamp()

Published May 6, 2026
·
Updated

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

net: Drop the lock in skbmaytxtimestamp()

skbmaytxtimestamp() may acquire sock::skcallbacklock. The lock must not be taken in IRQ context, only softirq is okay. A few drivers receive the timestamp via a dedicated interrupt and complete the TX timestamp from that handler. This will lead to a deadlock if the lock is already write-locked on the same CPU.

Taking the lock can be avoided. The socket (pointed by the skb) will remain valid until the skb is released. The ->sksocket and ->file member will be set to NULL once the user closes the socket which may happen before the timestamp arrives. If we happen to observe the pointer while the socket is closing but before the pointer is set to NULL then we may use it because both pointer (and the file's cred member) are RCU freed.

Drop the lock. Use READONCE() to obtain the individual pointer. Add a matching WRITEONCE() where the pointer are cleared.

Affected Software

4 affected components
Linux Linux kernel
Linux Linux kernel>=4.0<6.18.16
Linux Linux kernel>=6.19<6.19.6
Linux Linux kernel=7.0-rc1

Event History

May 6, 2026
CVE Published
via MITRE·11:28 AM
Data Sourced
via MITRE·11:28 AM
Description
Data Sourced
via NVD·12:16 PM
RemedyDescriptionSeverityWeaknessAffected Software
May 7, 2026
Data Sourced
via Microsoft·08:09 AM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which systems are realistically exposed to this issue?

The issue is relevant to Linux kernel systems using network drivers that receive transmit timestamps through a dedicated interrupt and complete TX timestamp processing in that interrupt handler. The deadlock requires skb_may_tx_timestamp() to attempt to acquire sock::sk_callback_lock in IRQ context while that lock is already write-locked on the same CPU.

2

What is the operational impact if the issue is triggered?

The described outcome is a deadlock in the kernel networking path. The CVSS vector rates the availability impact as high, with local access and low privileges required and no user interaction.

3

Are sockets that have been closed before a timestamp arrives part of the fix's considerations?

Yes. A socket can be closed before its timestamp arrives, clearing its ->sk_socket and ->file pointers; the fix avoids the lock while using READ_ONCE() for those pointers and relies on RCU freeing when a pointer is observed during closure.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203