summaryrefslogtreecommitdiff
path: root/rust
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2023-08-02 16:15:00 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-08-11 13:08:18 +0300
commitcd4bdf8f98ef88ac9c2df2269c925c857e3af222 (patch)
tree8395d4f69cba37b19a50efa33e32b9380640d3fd /rust
parente53917e7efea95b8a10c5d3696e37e4a1e7d47fd (diff)
downloadlinux-cd4bdf8f98ef88ac9c2df2269c925c857e3af222.tar.xz
tcp_metrics: fix data-race in tcpm_suck_dst() vs fastopen
[ Upstream commit ddf251fa2bc1d3699eec0bae6ed0bc373b8fda79 ] Whenever tcpm_new() reclaims an old entry, tcpm_suck_dst() would overwrite data that could be read from tcp_fastopen_cache_get() or tcp_metrics_fill_info(). We need to acquire fastopen_seqlock to maintain consistency. For newly allocated objects, tcpm_new() can switch to kzalloc() to avoid an extra fastopen_seqlock acquisition. Fixes: 1fe4c481ba63 ("net-tcp: Fast Open client - cookie cache") Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Yuchung Cheng <ycheng@google.com> Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com> Link: https://lore.kernel.org/r/20230802131500.1478140-7-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'rust')
0 files changed, 0 insertions, 0 deletions