[PATCH mptcp-next] mptcp: subflow: get_af_ops should return const

Florian Westphal posted 1 patch 2 years, 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/20220210145534.32660-1-fw@strlen.de
Maintainers: Matthieu Baerts <matthieu.baerts@tessares.net>, Mat Martineau <mathew.j.martineau@linux.intel.com>, "David S. Miller" <davem@davemloft.net>, Jakub Kicinski <kuba@kernel.org>
net/mptcp/subflow.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
[PATCH mptcp-next] mptcp: subflow: get_af_ops should return const
Posted by Florian Westphal 2 years, 2 months ago
Thre returned structure is read-only.

Signed-off-by: Florian Westphal <fw@strlen.de>
---
 Could be squashed with 'mptcp: mark ops structures as ro_after_init'.

 net/mptcp/subflow.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c
index 5bd49a350750..e727d838da0e 100644
--- a/net/mptcp/subflow.c
+++ b/net/mptcp/subflow.c
@@ -787,7 +787,7 @@ static struct sock *subflow_syn_recv_sock(const struct sock *sk,
 	return child;
 }
 
-static struct inet_connection_sock_af_ops subflow_specific;
+static struct inet_connection_sock_af_ops subflow_specific __ro_after_init;
 static struct proto tcp_prot_override;
 
 enum mapping_status {
@@ -1313,7 +1313,7 @@ static void subflow_write_space(struct sock *ssk)
 	mptcp_write_space(sk);
 }
 
-static struct inet_connection_sock_af_ops *
+static const struct inet_connection_sock_af_ops *
 subflow_default_af_ops(struct sock *sk)
 {
 #if IS_ENABLED(CONFIG_MPTCP_IPV6)
@@ -1328,7 +1328,7 @@ void mptcpv6_handle_mapped(struct sock *sk, bool mapped)
 {
 	struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
 	struct inet_connection_sock *icsk = inet_csk(sk);
-	struct inet_connection_sock_af_ops *target;
+	const struct inet_connection_sock_af_ops *target;
 
 	target = mapped ? &subflow_v6m_specific : subflow_default_af_ops(sk);
 
-- 
2.34.1


Re: [PATCH mptcp-next] mptcp: subflow: get_af_ops should return const
Posted by Mat Martineau 2 years, 2 months ago
On Thu, 10 Feb 2022, Florian Westphal wrote:

> Thre returned structure is read-only.
>
> Signed-off-by: Florian Westphal <fw@strlen.de>
> ---
> Could be squashed with 'mptcp: mark ops structures as ro_after_init'.
>

Yeah, I agree that it would be good to squash with the other 
ro_after_init changes. Patch looks fine.

-Mat

> net/mptcp/subflow.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c
> index 5bd49a350750..e727d838da0e 100644
> --- a/net/mptcp/subflow.c
> +++ b/net/mptcp/subflow.c
> @@ -787,7 +787,7 @@ static struct sock *subflow_syn_recv_sock(const struct sock *sk,
> 	return child;
> }
>
> -static struct inet_connection_sock_af_ops subflow_specific;
> +static struct inet_connection_sock_af_ops subflow_specific __ro_after_init;
> static struct proto tcp_prot_override;
>
> enum mapping_status {
> @@ -1313,7 +1313,7 @@ static void subflow_write_space(struct sock *ssk)
> 	mptcp_write_space(sk);
> }
>
> -static struct inet_connection_sock_af_ops *
> +static const struct inet_connection_sock_af_ops *
> subflow_default_af_ops(struct sock *sk)
> {
> #if IS_ENABLED(CONFIG_MPTCP_IPV6)
> @@ -1328,7 +1328,7 @@ void mptcpv6_handle_mapped(struct sock *sk, bool mapped)
> {
> 	struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
> 	struct inet_connection_sock *icsk = inet_csk(sk);
> -	struct inet_connection_sock_af_ops *target;
> +	const struct inet_connection_sock_af_ops *target;
>
> 	target = mapped ? &subflow_v6m_specific : subflow_default_af_ops(sk);
>
> -- 
> 2.34.1
>
>
>

--
Mat Martineau
Intel

Re: [PATCH mptcp-next] mptcp: subflow: get_af_ops should return const
Posted by Matthieu Baerts 2 years, 2 months ago
Hi Florian, Mat,

On 10/02/2022 15:55, Florian Westphal wrote:
> Thre returned structure is read-only.

Thank you for this patch and the review!

Now in our tree (squashed):

- a2b3e7491b59: "squashed" in "mptcp: mark ops structures as ro_after_init"
- Results: 7f0a980be1a6..178780fe8241

Builds and tests are now in progress:

https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20220211T110237
https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net