Message ID | 9d886bb5015a687a46287accd3a6f1111233eda7.1620349765.git.geliangtang@gmail.com |
---|---|
State | Accepted, archived |
Commit | 946635ce56b13793ffca2f8986e93c8b7c3ba628 |
Delegated to: | Matthieu Baerts |
Headers | show |
Series | [mptcp-next] Squash to "mptcp: add csum_reqd in mptcp_options_received" | expand |
On Fri, 7 May 2021, Geliang Tang wrote: > Init csum_reqd in mptcp_get_options, keep mptcp_parse_option unchanged. > > Signed-off-by: Geliang Tang <geliangtang@gmail.com> > --- > net/mptcp/options.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) Looks good to me, thanks. -Mat > > diff --git a/net/mptcp/options.c b/net/mptcp/options.c > index 4a74b8bb737f..527affbbeea9 100644 > --- a/net/mptcp/options.c > +++ b/net/mptcp/options.c > @@ -24,8 +24,6 @@ static void mptcp_parse_option(const struct sk_buff *skb, > const unsigned char *ptr, int opsize, > struct mptcp_options_received *mp_opt) > { > - struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk); > - struct mptcp_sock *msk = mptcp_sk(subflow->conn); > u8 subtype = *ptr >> 4; > int expected_opsize; > u8 version; > @@ -74,7 +72,6 @@ static void mptcp_parse_option(const struct sk_buff *skb, > * negotiated, the receiver MUST close the subflow with a RST as > * it is considered broken." > */ > - mp_opt->csum_reqd = READ_ONCE(msk->csum_enabled); > if (flags & MPTCP_CAP_CHECKSUM_REQD) > mp_opt->csum_reqd = 1; > > @@ -329,6 +326,8 @@ void mptcp_get_options(const struct sock *sk, > const struct sk_buff *skb, > struct mptcp_options_received *mp_opt) > { > + struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk); > + struct mptcp_sock *msk = mptcp_sk(subflow->conn); > const struct tcphdr *th = tcp_hdr(skb); > const unsigned char *ptr; > int length; > @@ -344,7 +343,7 @@ void mptcp_get_options(const struct sock *sk, > mp_opt->dss = 0; > mp_opt->mp_prio = 0; > mp_opt->reset = 0; > - mp_opt->csum_reqd = 0; > + mp_opt->csum_reqd = READ_ONCE(msk->csum_enabled); > > length = (th->doff * 4) - sizeof(struct tcphdr); > ptr = (const unsigned char *)(th + 1); > -- > 2.31.1 > > > -- Mat Martineau Intel
Hi Geliang, Mat, On 07/05/2021 03:12, Geliang Tang wrote: > Init csum_reqd in mptcp_get_options, keep mptcp_parse_option unchanged. > > Signed-off-by: Geliang Tang <geliangtang@gmail.com> Thank you for the patch and the review! Now in our tree: - 946635ce56b1: "squashed" in "mptcp: add csum_reqd in mptcp_options_received" - Results: bcf6675a2d3f..6628a7b4ea41 Builds and tests are now in progress: https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20210513T073141 https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export/20210513T073141 Cheers, Matt
diff --git a/net/mptcp/options.c b/net/mptcp/options.c index 4a74b8bb737f..527affbbeea9 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -24,8 +24,6 @@ static void mptcp_parse_option(const struct sk_buff *skb, const unsigned char *ptr, int opsize, struct mptcp_options_received *mp_opt) { - struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk); - struct mptcp_sock *msk = mptcp_sk(subflow->conn); u8 subtype = *ptr >> 4; int expected_opsize; u8 version; @@ -74,7 +72,6 @@ static void mptcp_parse_option(const struct sk_buff *skb, * negotiated, the receiver MUST close the subflow with a RST as * it is considered broken." */ - mp_opt->csum_reqd = READ_ONCE(msk->csum_enabled); if (flags & MPTCP_CAP_CHECKSUM_REQD) mp_opt->csum_reqd = 1; @@ -329,6 +326,8 @@ void mptcp_get_options(const struct sock *sk, const struct sk_buff *skb, struct mptcp_options_received *mp_opt) { + struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk); + struct mptcp_sock *msk = mptcp_sk(subflow->conn); const struct tcphdr *th = tcp_hdr(skb); const unsigned char *ptr; int length; @@ -344,7 +343,7 @@ void mptcp_get_options(const struct sock *sk, mp_opt->dss = 0; mp_opt->mp_prio = 0; mp_opt->reset = 0; - mp_opt->csum_reqd = 0; + mp_opt->csum_reqd = READ_ONCE(msk->csum_enabled); length = (th->doff * 4) - sizeof(struct tcphdr); ptr = (const unsigned char *)(th + 1);
Init csum_reqd in mptcp_get_options, keep mptcp_parse_option unchanged. Signed-off-by: Geliang Tang <geliangtang@gmail.com> --- net/mptcp/options.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)