On Sun, Jan 24, 2021 at 4:12 PM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > Hi all, > > Today's linux-next merge of the bpf-next tree got a conflict in: > > net/ipv4/tcp.c > > between commit: > > 7eeba1706eba ("tcp: Add receive timestamp support for receive zerocopy.") > > from the net-next tree and commit: > > 9cacf81f8161 ("bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE") > > from the bpf-next tree. > > I fixed it up (see below) and can carry the fix as necessary. This > is now fixed as far as linux-next is concerned, but any non trivial > conflicts should be mentioned to your upstream maintainer when your tree > is submitted for merging. You may also want to consider cooperating > with the maintainer of the conflicting tree to minimise any particularly > complex conflicts. > The fix looks good, thank you. -Arjun > -- > Cheers, > Stephen Rothwell > > diff --cc net/ipv4/tcp.c > index e1a17c6b473c,26aa923cf522..000000000000 > --- a/net/ipv4/tcp.c > +++ b/net/ipv4/tcp.c > @@@ -4160,18 -4098,13 +4160,20 @@@ static int do_tcp_getsockopt(struct soc > if (copy_from_user(&zc, optval, len)) > return -EFAULT; > lock_sock(sk); > - err = tcp_zerocopy_receive(sk, &zc); > + err = tcp_zerocopy_receive(sk, &zc, &tss); > + err = BPF_CGROUP_RUN_PROG_GETSOCKOPT_KERN(sk, level, optname, > + &zc, &len, err); > release_sock(sk); > - if (len >= offsetofend(struct tcp_zerocopy_receive, err)) > - goto zerocopy_rcv_sk_err; > + if (len >= offsetofend(struct tcp_zerocopy_receive, msg_flags)) > + goto zerocopy_rcv_cmsg; > switch (len) { > + case offsetofend(struct tcp_zerocopy_receive, msg_flags): > + goto zerocopy_rcv_cmsg; > + case offsetofend(struct tcp_zerocopy_receive, msg_controllen): > + case offsetofend(struct tcp_zerocopy_receive, msg_control): > + case offsetofend(struct tcp_zerocopy_receive, flags): > + case offsetofend(struct tcp_zerocopy_receive, copybuf_len): > + case offsetofend(struct tcp_zerocopy_receive, copybuf_address): > case offsetofend(struct tcp_zerocopy_receive, err): > goto zerocopy_rcv_sk_err; > case offsetofend(struct tcp_zerocopy_receive, inq):