On Tue, 15 Nov 2022 21:19:03 +0000 Dmitry Safonov wrote:
+ if (!rcu_dereference_protected(tp->md5sig_info, lockdep_sock_is_held(sk))) {
+ if (tcp_md5sig_info_add(sk, sk_gfp_mask(sk, GFP_ATOMIC)))
+ return -ENOMEM;
+
+ if (!static_key_fast_inc_not_negative(&tcp_md5_needed.key.key)) {
+ struct tcp_md5sig_info *md5sig = tp->md5sig_info;
I don't think sparse will be able to deduce that ->md5sig_info access
is safe here, so could you wrap it up as well? Maybe it wouldn't be
the worst move to provide a sk_rcu_dereference() or rcu_dereference_sk()
or some such wrapper.
More importantly tho - was the merging part for this patches discussed?
They don't apply to net-next.