Message ID | 20210206070203.483362-1-arjunroy.kdev@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net,v2] tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. | expand |
Context | Check | Description |
---|---|---|
netdev/apply | fail | Patch does not apply to net |
netdev/tree_selection | success | Clearly marked for net |
On 2/6/21 12:02 AM, Arjun Roy wrote: > From: Arjun Roy <arjunroy@google.com> > > Explicitly define reserved field and require it to be 0-valued. > > Fixes: 7eeba1706eba ("tcp: Add receive timestamp support for receive zerocopy.") > Signed-off-by: Arjun Roy <arjunroy@google.com> > Signed-off-by: Eric Dumazet <edumazet@google.com> > Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com> > Suggested-by: David Ahern <dsahern@gmail.com> > Suggested-by: Leon Romanovsky <leon@kernel.org> > Suggested-by: Jakub Kicinski <kuba@kernel.org> > --- > include/uapi/linux/tcp.h | 2 +- > net/ipv4/tcp.c | 2 ++ > 2 files changed, 3 insertions(+), 1 deletion(-) > Reviewed-by: David Ahern <dsahern@gmail.com>
On Fri, 5 Feb 2021 23:02:03 -0800 Arjun Roy wrote: > From: Arjun Roy <arjunroy@google.com> > > Explicitly define reserved field and require it to be 0-valued. > > Fixes: 7eeba1706eba ("tcp: Add receive timestamp support for receive zerocopy.") > Signed-off-by: Arjun Roy <arjunroy@google.com> > Signed-off-by: Eric Dumazet <edumazet@google.com> > Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com> > Suggested-by: David Ahern <dsahern@gmail.com> > Suggested-by: Leon Romanovsky <leon@kernel.org> > Suggested-by: Jakub Kicinski <kuba@kernel.org> Applying: tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. Using index info to reconstruct a base tree... M include/uapi/linux/tcp.h M net/ipv4/tcp.c Falling back to patching base and 3-way merge... Auto-merging net/ipv4/tcp.c Auto-merging include/uapi/linux/tcp.h CONFLICT (content): Merge conflict in include/uapi/linux/tcp.h error: Failed to merge in the changes. hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch failed at 0001 tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort".
On Sat, 6 Feb 2021 09:19:03 -0800 Jakub Kicinski wrote: > On Fri, 5 Feb 2021 23:02:03 -0800 Arjun Roy wrote: > > From: Arjun Roy <arjunroy@google.com> > > > > Explicitly define reserved field and require it to be 0-valued. > > > > Fixes: 7eeba1706eba ("tcp: Add receive timestamp support for receive zerocopy.") > > Signed-off-by: Arjun Roy <arjunroy@google.com> > > Signed-off-by: Eric Dumazet <edumazet@google.com> > > Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com> > > Suggested-by: David Ahern <dsahern@gmail.com> > > Suggested-by: Leon Romanovsky <leon@kernel.org> > > Suggested-by: Jakub Kicinski <kuba@kernel.org> > > Applying: tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. > Using index info to reconstruct a base tree... > M include/uapi/linux/tcp.h > M net/ipv4/tcp.c > Falling back to patching base and 3-way merge... > Auto-merging net/ipv4/tcp.c > Auto-merging include/uapi/linux/tcp.h > CONFLICT (content): Merge conflict in include/uapi/linux/tcp.h > error: Failed to merge in the changes. > hint: Use 'git am --show-current-patch=diff' to see the failed patch > Patch failed at 0001 tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. > When you have resolved this problem, run "git am --continue". > If you prefer to skip this patch, run "git am --skip" instead. > To restore the original branch and stop patching, run "git am --abort". Ah, you just marked it for the wrong tree. Please repost with net-next in the subject tag, otherwise build bot won't handle it.
On Sat, Feb 6, 2021 at 9:20 AM Jakub Kicinski <kuba@kernel.org> wrote: > > On Sat, 6 Feb 2021 09:19:03 -0800 Jakub Kicinski wrote: > > On Fri, 5 Feb 2021 23:02:03 -0800 Arjun Roy wrote: > > > From: Arjun Roy <arjunroy@google.com> > > > > > > Explicitly define reserved field and require it to be 0-valued. > > > > > > Fixes: 7eeba1706eba ("tcp: Add receive timestamp support for receive zerocopy.") > > > Signed-off-by: Arjun Roy <arjunroy@google.com> > > > Signed-off-by: Eric Dumazet <edumazet@google.com> > > > Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com> > > > Suggested-by: David Ahern <dsahern@gmail.com> > > > Suggested-by: Leon Romanovsky <leon@kernel.org> > > > Suggested-by: Jakub Kicinski <kuba@kernel.org> > > > > Applying: tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. > > Using index info to reconstruct a base tree... > > M include/uapi/linux/tcp.h > > M net/ipv4/tcp.c > > Falling back to patching base and 3-way merge... > > Auto-merging net/ipv4/tcp.c > > Auto-merging include/uapi/linux/tcp.h > > CONFLICT (content): Merge conflict in include/uapi/linux/tcp.h > > error: Failed to merge in the changes. > > hint: Use 'git am --show-current-patch=diff' to see the failed patch > > Patch failed at 0001 tcp: Explicitly mark reserved field in tcp_zerocopy_receive args. > > When you have resolved this problem, run "git am --continue". > > If you prefer to skip this patch, run "git am --skip" instead. > > To restore the original branch and stop patching, run "git am --abort". > > Ah, you just marked it for the wrong tree. Please repost with net-next > in the subject tag, otherwise build bot won't handle it. Resent with net-next. Thanks, -Arjun
diff --git a/include/uapi/linux/tcp.h b/include/uapi/linux/tcp.h index 42fc5a640df4..8fc09e8638b3 100644 --- a/include/uapi/linux/tcp.h +++ b/include/uapi/linux/tcp.h @@ -357,6 +357,6 @@ struct tcp_zerocopy_receive { __u64 msg_control; /* ancillary data */ __u64 msg_controllen; __u32 msg_flags; - /* __u32 hole; Next we must add >1 u32 otherwise length checks fail. */ + __u32 reserved; /* set to 0 for now */ }; #endif /* _UAPI_LINUX_TCP_H */ diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index e1a17c6b473c..c8469c579ed8 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -4159,6 +4159,8 @@ static int do_tcp_getsockopt(struct sock *sk, int level, } if (copy_from_user(&zc, optval, len)) return -EFAULT; + if (zc.reserved) + return -EINVAL; lock_sock(sk); err = tcp_zerocopy_receive(sk, &zc, &tss); release_sock(sk);