public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Simon Horman <horms@kernel•org>
To: Richard Gobert <richardbgobert@gmail•com>
Cc: davem@davemloft•net, edumazet@google•com, kuba@kernel•org,
	pabeni@redhat•com, dsahern@kernel•org, razor@blackwall•org,
	idosch@nvidia•com, petrm@nvidia•com, menglong8.dong@gmail•com,
	daniel@iogearbox•net, martin.lau@kernel•org,
	netdev@vger•kernel.org, linux-kernel@vger•kernel.org
Subject: Re: [PATCH net-next v4 4/4] net: geneve: enable binding geneve sockets to local addresses
Date: Fri, 18 Jul 2025 08:31:41 +0100	[thread overview]
Message-ID: <20250718073141.GG27043@horms.kernel.org> (raw)
In-Reply-To: <20250717115412.11424-5-richardbgobert@gmail.com>

On Thu, Jul 17, 2025 at 01:54:12PM +0200, Richard Gobert wrote:

...

> diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c

...

>  static struct geneve_sock *geneve_find_sock(struct geneve_net *gn,
>  					    sa_family_t family,
> -					    __be16 dst_port)
> +					    __be16 dst_port,
> +						union geneve_addr *saddr)
>  {
>  	struct geneve_sock *gs;
>  
>  	list_for_each_entry(gs, &gn->sock_list, list) {
> -		if (inet_sk(gs->sock->sk)->inet_sport == dst_port &&
> +		struct sock *sk = gs->sock->sk;
> +		struct inet_sock *inet = inet_sk(sk);
> +
> +		if (family == AF_INET &&
> +		    inet->inet_rcv_saddr != saddr->sin.sin_addr.s_addr)
> +			continue;
> +
> +		else if (ipv6_addr_cmp(&sk->sk_v6_rcv_saddr,
> +				       &saddr->sin6.sin6_addr) != 0)
> +			continue;

Hi Richard,

Unfortunately this fails to build when CONFIG_IPV6 is not set.

  .../geneve.c:685:31: error: no member named 'skc_v6_rcv_saddr' in 'struct sock_common'; did you mean 'skc_rcv_saddr'?
    685 |                 else if (ipv6_addr_cmp(&sk->sk_v6_rcv_saddr,
        |                                             ^
  ./include/net/sock.h:385:37: note: expanded from macro 'sk_v6_rcv_saddr'
    385 | #define sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
        |                                     ^
  ./include/net/sock.h:155:11: note: 'skc_rcv_saddr' declared here
    155 |                         __be32  skc_rcv_saddr;
        |                                 ^

> +
> +		if (inet->inet_sport == dst_port &&
>  		    geneve_get_sk_family(gs) == family) {
>  			return gs;
>  		}

...

-- 
pw-bot: changes-requested

  reply	other threads:[~2025-07-18  7:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-17 11:54 [PATCH net-next v4 0/4] net: add local address bind support to vxlan and geneve Richard Gobert
2025-07-17 11:54 ` [PATCH net-next v4 1/4] net: udp: add freebind option to udp_sock_create Richard Gobert
2025-07-17 11:54 ` [PATCH net-next v4 2/4] net: vxlan: add netlink option to bind vxlan sockets to local addresses Richard Gobert
2025-07-18  7:35   ` Simon Horman
2025-07-20 14:10   ` Ido Schimmel
2025-07-17 11:54 ` [PATCH net-next v4 3/4] net: vxlan: bind vxlan sockets to their local address Richard Gobert
2025-07-17 11:54 ` [PATCH net-next v4 4/4] net: geneve: enable binding geneve sockets to local addresses Richard Gobert
2025-07-18  7:31   ` Simon Horman [this message]
2025-07-18  8:26     ` Simon Horman
2025-07-18  9:00   ` kernel test robot
2025-07-20 14:16   ` Ido Schimmel
2025-07-20 14:00 ` [PATCH net-next v4 0/4] net: add local address bind support to vxlan and geneve Ido Schimmel
2025-07-31 12:05   ` Richard Gobert
2025-07-31 13:07     ` Ido Schimmel

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=20250718073141.GG27043@horms.kernel.org \
    --to=horms@kernel$(echo .)org \
    --cc=daniel@iogearbox$(echo .)net \
    --cc=davem@davemloft$(echo .)net \
    --cc=dsahern@kernel$(echo .)org \
    --cc=edumazet@google$(echo .)com \
    --cc=idosch@nvidia$(echo .)com \
    --cc=kuba@kernel$(echo .)org \
    --cc=linux-kernel@vger$(echo .)kernel.org \
    --cc=martin.lau@kernel$(echo .)org \
    --cc=menglong8.dong@gmail$(echo .)com \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=pabeni@redhat$(echo .)com \
    --cc=petrm@nvidia$(echo .)com \
    --cc=razor@blackwall$(echo .)org \
    --cc=richardbgobert@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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