All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Abeni <pabeni@redhat.com>
To: mptcp@lists.linux.dev
Subject: [PATCH v6 mptcp-next 01/22] mptcp: add csum_enabled in mptcp_sock
Date: Tue,  4 May 2021 23:41:49 +0200	[thread overview]
Message-ID: <40407808177db33b02224560589e61fdaab7d4a4.1620163861.git.pabeni@redhat.com> (raw)
In-Reply-To: <cover.1620163861.git.pabeni@redhat.com>

From: Geliang Tang <geliangtang@gmail.com>

This patch added a new member named csum_enabled in struct mptcp_sock,
used a dummy mptcp_is_checksum_enabled() helper to initialize it.

Also added a new member named mptcpi_csum_enabled in struct mptcp_info
to expose the csum_enabled flag.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
---
 include/uapi/linux/mptcp.h | 1 +
 net/mptcp/mptcp_diag.c     | 1 +
 net/mptcp/protocol.c       | 1 +
 net/mptcp/protocol.h       | 2 ++
 4 files changed, 5 insertions(+)

diff --git a/include/uapi/linux/mptcp.h b/include/uapi/linux/mptcp.h
index 8eb3c0844bff..7b05f7102321 100644
--- a/include/uapi/linux/mptcp.h
+++ b/include/uapi/linux/mptcp.h
@@ -105,6 +105,7 @@ struct mptcp_info {
 	__u64	mptcpi_rcv_nxt;
 	__u8	mptcpi_local_addr_used;
 	__u8	mptcpi_local_addr_max;
+	__u8	mptcpi_csum_enabled;
 };
 
 /*
diff --git a/net/mptcp/mptcp_diag.c b/net/mptcp/mptcp_diag.c
index f16d9b5ee978..8f88ddeab6a2 100644
--- a/net/mptcp/mptcp_diag.c
+++ b/net/mptcp/mptcp_diag.c
@@ -144,6 +144,7 @@ static void mptcp_diag_get_info(struct sock *sk, struct inet_diag_msg *r,
 	info->mptcpi_write_seq = READ_ONCE(msk->write_seq);
 	info->mptcpi_snd_una = READ_ONCE(msk->snd_una);
 	info->mptcpi_rcv_nxt = READ_ONCE(msk->ack_seq);
+	info->mptcpi_csum_enabled = READ_ONCE(msk->csum_enabled);
 	unlock_sock_fast(sk, slow);
 }
 
diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c
index aec8e77b18e4..4cf8965fae4a 100644
--- a/net/mptcp/protocol.c
+++ b/net/mptcp/protocol.c
@@ -2411,6 +2411,7 @@ static int __mptcp_init_sock(struct sock *sk)
 	msk->ack_hint = NULL;
 	msk->first = NULL;
 	inet_csk(sk)->icsk_sync_mss = mptcp_sync_mss;
+	WRITE_ONCE(msk->csum_enabled, mptcp_is_checksum_enabled(sock_net(sk)));
 
 	mptcp_pm_data_init(msk);
 
diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h
index d230a75af631..6cbbe7403402 100644
--- a/net/mptcp/protocol.h
+++ b/net/mptcp/protocol.h
@@ -234,6 +234,7 @@ struct mptcp_sock {
 	bool		snd_data_fin_enable;
 	bool		rcv_fastclose;
 	bool		use_64bit_ack; /* Set when we received a 64-bit DSN */
+	bool		csum_enabled;
 	spinlock_t	join_list_lock;
 	struct sock	*ack_hint;
 	struct work_struct work;
@@ -524,6 +525,7 @@ static inline void mptcp_subflow_delegated_done(struct mptcp_subflow_context *su
 
 int mptcp_is_enabled(struct net *net);
 unsigned int mptcp_get_add_addr_timeout(struct net *net);
+static inline int mptcp_is_checksum_enabled(struct net *net) { return false; }
 void mptcp_subflow_fully_established(struct mptcp_subflow_context *subflow,
 				     struct mptcp_options_received *mp_opt);
 bool mptcp_subflow_data_available(struct sock *sk);
-- 
2.26.2


  reply	other threads:[~2021-05-04 21:42 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-04 21:41 [PATCH v6 mptcp-next 00/22] mptcp: data checksum support Paolo Abeni
2021-05-04 21:41 ` Paolo Abeni [this message]
2021-05-04 21:41 ` [PATCH v6 mptcp-next 02/22] mptcp: generate the data checksum Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 03/22] Squash-to: "mptcp: generate the data checksum" Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 04/22] mptcp: add csum_reqd in mptcp_out_options Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 05/22] mptcp: send out checksum for MP_CAPABLE with data Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 06/22] Squash-to: "mptcp: send out checksum for MP_CAPABLE with data" Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 07/22] mptcp: send out checksum for DSS Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 08/22] Squash-to "mptcp: send out checksum for DSS" Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 09/22] mptcp: add sk parameter for mptcp_parse_option Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 10/22] mptcp: add csum_reqd in mptcp_options_received Paolo Abeni
2021-05-04 21:41 ` [PATCH v6 mptcp-next 11/22] mptcp: receive checksum for MP_CAPABLE with data Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 12/22] Squash-to: "mptcp: receive checksum for MP_CAPABLE with data" Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 13/22] mptcp: receive checksum for DSS Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 14/22] Squash-to: "mptcp: receive checksum for DSS" Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 15/22] mptcp: validate the data checksum Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 16/22] Squash-to: " Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 17/22] mptcp: cleanup error path in subflow_check_data_avail() Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 18/22] mptcp: tune re-injections for csum enabled mode Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 19/22] mptcp: add the mib for data checksum Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 20/22] mptcp: add a new sysctl checksum_enabled Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 21/22] selftests: mptcp: enable checksum in mptcp_connect.sh Paolo Abeni
2021-05-04 21:42 ` [PATCH v6 mptcp-next 22/22] selftests: mptcp: enable checksum in mptcp_join.sh Paolo Abeni
2021-05-05 10:12 ` [PATCH v6 mptcp-next 00/22] mptcp: data checksum support Paolo Abeni
2021-05-05 18:03   ` Mat Martineau
2021-05-05 23:56 ` Mat Martineau
2021-05-06  8:31 ` Matthieu Baerts

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=40407808177db33b02224560589e61fdaab7d4a4.1620163861.git.pabeni@redhat.com \
    --to=pabeni@redhat.com \
    --cc=mptcp@lists.linux.dev \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.