In the Linux kernel, the following vulnerability has been resolved: tcp: Fix out-of-bounds access for twsk in tcp_ao_established_key(). lockdep_sock_is_held() was added in tcp_ao_established_key() by the cited commit. It can be called from tcp_v[46]_timewait_ack() with twsk. Since it does not have sk->sk_lock, the lockdep annotation results in out-of-bound access. $ pahole -C tcp_timewait_sock vmlinux | grep size /* size: 288, cachelines: 5, members: 8 */ $ pahole -C sock vmlinux | grep sk_lock socket_lock_t sk_lock; /* 440 192 */ Let's not use lockdep_sock_is_held() for TCP_TIME_WAIT.
https://git.kernel.org/stable/c/87bb3e719042f0030a6dad39118c6a6b2a491ad9
https://git.kernel.org/stable/c/510db031ba6eb40134f84c90ef963ea4b6dfb878
https://git.kernel.org/stable/c/29cf64d128c94cf98d1c69d8b2962d39db5ff4c6
https://git.kernel.org/stable/c/03cb001ef87b3f8d859cf7f96329acf3d6235d29