From: Paolo Abeni <pabeni@redhat.com>
To: Eric Dumazet <eric.dumazet@gmail.com>,
Mat Martineau <mathew.j.martineau@linux.intel.com>,
netdev@vger.kernel.org, mptcp@lists.01.org
Subject: Re: [PATCH net-next v5 05/11] tcp, ulp: Add clone operation to tcp_ulp_ops
Date: Fri, 20 Dec 2019 17:21:19 +0100 [thread overview]
Message-ID: <1563cacb2fb2f5c59bedc7a33667586d4c3ec6c5.camel@redhat.com> (raw)
In-Reply-To: <de3e37b0-f3ff-c5d0-9a38-890ce04916c7@gmail.com>
On Fri, 2019-12-20 at 07:26 -0800, Eric Dumazet wrote:
>
> On 12/19/19 2:34 PM, Mat Martineau wrote:
> > If ULP is used on a listening socket, icsk_ulp_ops and icsk_ulp_data are
> > copied when the listener is cloned. Sometimes the clone is immediately
> > deleted, which will invoke the release op on the clone and likely
> > corrupt the listening socket's icsk_ulp_data.
> >
> > The clone operation is invoked immediately after the clone is copied and
> > gives the ULP type an opportunity to set up the clone socket and its
> > icsk_ulp_data.
> >
>
> Since the method is void, this means no error can happen.
>
> For example we do not intend to attempt a memory allocation ?
if the MPTCP ULP clone fails, we fallback to plain TCP (the 'is_mptcp'
flag cleared on the tcp 'struct sock'), so we don't have an error
return code there.
If we change the 'clone' signature, than the only in-kernel user will
always return 0, would that be ok?
Thank you!
Paolo
next prev parent reply other threads:[~2019-12-20 16:21 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-19 22:34 [PATCH net-next v5 00/11] Multipath TCP: Prerequisites Mat Martineau
2019-12-19 22:34 ` [PATCH net-next v5 01/11] net: Make sock protocol value checks more specific Mat Martineau
2019-12-20 15:35 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 02/11] sock: Make sk_protocol a 16-bit value Mat Martineau
2019-12-20 15:37 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 03/11] tcp: Define IPPROTO_MPTCP Mat Martineau
2019-12-20 15:39 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 04/11] tcp: Add MPTCP option number Mat Martineau
2019-12-20 15:39 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 05/11] tcp, ulp: Add clone operation to tcp_ulp_ops Mat Martineau
2019-12-20 15:26 ` Eric Dumazet
2019-12-20 16:21 ` Paolo Abeni [this message]
2019-12-20 16:26 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 06/11] mptcp: Add MPTCP to skb extensions Mat Martineau
2019-12-20 15:33 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 07/11] tcp: coalesce/collapse must respect MPTCP extensions Mat Martineau
2019-12-20 15:25 ` Eric Dumazet
2019-12-20 16:17 ` Mat Martineau
2019-12-19 22:34 ` [PATCH net-next v5 08/11] tcp: Export TCP functions and ops struct Mat Martineau
2019-12-20 15:31 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 09/11] tcp: Check for filled TCP option space before SACK Mat Martineau
2019-12-20 15:27 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 10/11] tcp: clean ext on tx recycle Mat Martineau
2019-12-20 15:29 ` Eric Dumazet
2019-12-19 22:34 ` [PATCH net-next v5 11/11] skb: add helpers to allocate ext independently from sk_buff Mat Martineau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1563cacb2fb2f5c59bedc7a33667586d4c3ec6c5.camel@redhat.com \
--to=pabeni@redhat.com \
--cc=eric.dumazet@gmail.com \
--cc=mathew.j.martineau@linux.intel.com \
--cc=mptcp@lists.01.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).