diff options
author | Paolo Abeni <pabeni@redhat.com> | 2024-02-15 19:25:31 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2024-02-18 10:25:00 +0000 |
commit | a7cfe776637004a4c938fde78be4bd608c32c3ef (patch) | |
tree | bed69851fb9a72067edc4a9d769c40e1e6384a8b /net/unix/af_unix.c | |
parent | b8adb69a7d29c2d33eb327bca66476fb6066516b (diff) |
mptcp: fix data races on local_id
The local address id is accessed lockless by the NL PM, add
all the required ONCE annotation. There is a caveat: the local
id can be initialized late in the subflow life-cycle, and its
validity is controlled by the local_id_valid flag.
Remove such flag and encode the validity in the local_id field
itself with negative value before initialization. That allows
accessing the field consistently with a single read operation.
Fixes: 0ee4261a3681 ("mptcp: implement mptcp_pm_remove_subflow")
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions