All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wenjia Zhang <wenjia@linux.ibm.com>
To: Kuniyuki Iwashima <kuniyu@amazon.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Simon Horman <horms@kernel.org>
Cc: Kuniyuki Iwashima <kuni1840@gmail.com>, netdev@vger.kernel.org
Subject: Re: [PATCH v3 net-next 03/15] smc: Pass kern to smc_sock_alloc().
Date: Fri, 13 Dec 2024 14:46:52 +0100	[thread overview]
Message-ID: <2c765b30-3006-448e-8782-e01161d049f9@linux.ibm.com> (raw)
In-Reply-To: <20241213092152.14057-4-kuniyu@amazon.com>



On 13.12.24 10:21, Kuniyuki Iwashima wrote:
> AF_SMC was introduced in commit ac7138746e14 ("smc: establish
> new socket family").
> 
> Since then, smc_create() ignores the kern argument and calls
> smc_sock_alloc(), which calls sk_alloc() with hard-coded arguments.
> 
>    sk = sk_alloc(net, PF_SMC, GFP_KERNEL, prot, 0);
> 
> This means sock_create_kern(AF_SMC) always creates a userspace
> socket.
> 
> Later, commit d7cd421da9da ("net/smc: Introduce TCP ULP support")
> added another confusing call site.
> 
> smc_ulp_init() calls __smc_create() with kern=1, but again,
> smc_sock_alloc() allocates a userspace socket by calling
> sk_alloc() with kern=0.
> 
> To fix up the weird paths, let's pass kern down to smc_sock_alloc()
> and sk_alloc().
> 
> This commit does not introduce functional change because we have
> no in-tree users calling sock_create_kern(AF_SMC) and we change
> kern from 1 to 0 in smc_ulp_init().
> 
> Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
> ---
>   net/smc/af_smc.c | 10 +++++-----
>   1 file changed, 5 insertions(+), 5 deletions(-)
> 

Ok, thank you for the detailed description, LGTM!

Reviewed-by: Wenjia Zhang <wenjia@linux.ibm.com>


  reply	other threads:[~2024-12-13 13:47 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-13  9:21 [PATCH v3 net-next 00/15] treewide: socket: Clean up sock_create() and friends Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 01/15] socket: Un-export __sock_create() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 02/15] socket: Pass hold_net flag to __sock_create() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 03/15] smc: Pass kern to smc_sock_alloc() Kuniyuki Iwashima
2024-12-13 13:46   ` Wenjia Zhang [this message]
2024-12-13  9:21 ` [PATCH v3 net-next 04/15] socket: Pass hold_net to struct net_proto_family.create() Kuniyuki Iwashima
2024-12-13 13:46   ` Wenjia Zhang
2024-12-17 10:24   ` Paolo Abeni
2024-12-13  9:21 ` [PATCH v3 net-next 05/15] ppp: Pass hold_net to struct pppox_proto.create() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 06/15] nfc: Pass hold_net to struct nfc_protocol.create() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 07/15] socket: Add hold_net flag to struct proto_accept_arg Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 08/15] socket: Pass hold_net to sk_alloc() Kuniyuki Iwashima
2024-12-13 13:45   ` Wenjia Zhang
2024-12-13  9:21 ` [PATCH v3 net-next 09/15] socket: Respect hold_net in sk_alloc() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 10/15] socket: Introduce sock_create_net() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 11/15] socket: Remove kernel socket conversion Kuniyuki Iwashima
2024-12-13 13:45   ` Wenjia Zhang
2024-12-13 13:54     ` Kuniyuki Iwashima
2024-12-13 15:15       ` Wenjia Zhang
2024-12-13 14:15   ` Chuck Lever
2024-12-13 23:29   ` Allison Henderson
2024-12-13  9:21 ` [PATCH v3 net-next 12/15] socket: Move sock_inuse_add() to sock.c Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 13/15] socket: Use sock_create_net() instead of sock_create() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 14/15] socket: Rename sock_create() to sock_create_user() Kuniyuki Iwashima
2024-12-13  9:21 ` [PATCH v3 net-next 15/15] socket: Rename sock_create_kern() to sock_create_net_noref() Kuniyuki Iwashima
2024-12-13 13:46   ` Wenjia Zhang
2024-12-17 10:32   ` Paolo Abeni

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=2c765b30-3006-448e-8782-e01161d049f9@linux.ibm.com \
    --to=wenjia@linux.ibm.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=kuni1840@gmail.com \
    --cc=kuniyu@amazon.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    /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.