In the Linux kernel, the following vulnerability has been resolved: tcp: fix potential race in tcp_v6_syn_recv_sock() Code in tcp_v6_syn_recv_sock() after the call to tcp_v4_syn_recv_sock() is done too late. After tcp_v4_syn_recv_sock(), the child socket is already visible from TCP ehash table and other cpus might use it. Since newinet->pinet6 is still pointing to the listener ipv6_pinfo bad things can happen as syzbot found. Move the problematic code in tcp_v6_mapped_child_init() and call this new helper from tcp_v4_syn_recv_sock() before the ehash insertion. This allows the removal of one tcp_sync_mss(), since tcp_v4_syn_recv_sock() will call it with the correct context.
https://git.kernel.org/stable/c/fe89b2f05b854847784f91127319172945c1fadd
https://git.kernel.org/stable/c/858d2a4f67ff69e645a43487ef7ea7f28f06deae
https://git.kernel.org/stable/c/7178e2a8027423b2af17ab95df73a749a5b72e5b