mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: netdev-bot+sashiko@kernel.org
To: fmancera@suse.de
Cc: netdev@vger.kernel.org, horms@kernel.org, kuba@kernel.org,
	pabeni@redhat.com, edumazet@kernel.org, davem@davemloft.net,
	edumazet@google.com, ebiggers@kernel.org, ardb@kernel.org,
	krzk@kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 13/16 net-next v2] net: bridge: guard ARP/RARP proxy and suppression with CONFIG_IPV4
Date: Fri, 02 Oct 2026 10:32:28 +0000	[thread overview]
Message-ID: <179093714886.434549.12503393738688334727@kernel.org> (raw)
In-Reply-To: <20260928193046.6698-14-fmancera@suse.de>

Thank you for your contribution! Sashiko AI review found more severe
issue(s) in other patches of this series. This mail is only an FYI, in case
you want to address the nit picks below when you respin.

Low priority / nit picks for your consideration:

- [Low] In net/bridge/br_arp_nd_proxy.c, the patch removes `#if
  IS_ENABLED(CONFIG_INET)` from above the static helper…

--

net: bridge: guard ARP/RARP proxy and suppression with CONFIG_IPV4

This commit replaces the CONFIG_INET guards around the bridge ARP/RARP
proxy and suppression code with CONFIG_IPV4. The reason given is that
CONFIG_IPV4 is becoming optional and separate from the core stack.

> diff --git a/net/bridge/br_arp_nd_proxy.c b/net/bridge/br_arp_nd_proxy.c
> index da15f4d7c1aef..d739b86974299 100644
> --- a/net/bridge/br_arp_nd_proxy.c
> +++ b/net/bridge/br_arp_nd_proxy.c
> @@ -39,7 +39,6 @@ void br_recalculate_neigh_suppress_enabled(struct net_bridge *br)
>  	br_opt_toggle(br, BROPT_NEIGH_SUPPRESS_ENABLED, neigh_suppress);
>  }
>  
> -#if IS_ENABLED(CONFIG_INET)
>  static bool
>  br_is_neigh_suppress_enabled_vid(const struct net_bridge_port *p, u16 vid)
>  {
> @@ -57,6 +56,7 @@ br_is_neigh_suppress_enabled_vid(const struct net_bridge_port *p, u16 vid)
>  	return br_is_neigh_suppress_enabled(p, v);
>  }
>  
> +#if IS_ENABLED(CONFIG_IPV4)

[Severity: Low]
After this change, the static helper br_is_neigh_suppress_enabled_vid() is
always compiled. Does that give a "defined but not used" warning when
CONFIG_INET=n?

All of its callers are still behind config guards:

  br_do_proxy_suppress_arp()  inside #if IS_ENABLED(CONFIG_IPV4)
  br_do_suppress_nd()         inside #if IS_ENABLED(CONFIG_IPV6)

config IPV4 and config IPV6 are only defined under "if INET" in
net/Kconfig. config BRIDGE has no INET dependency, and br_arp_nd_proxy.o is
always part of bridge-y:

net/bridge/Makefile:
bridge-y	:= br.o br_device.o br_fdb.o br_forward.o br_if.o br_input.o \
			...
			br_netlink_tunnel.o br_arp_nd_proxy.o

With CONFIG_BRIDGE=y/m and CONFIG_INET=n, the file is still built, but
both guarded blocks are compiled out. That leaves the helper with no
callers and triggers -Wunused-function. With CONFIG_WERROR=y, which
defaults to y under COMPILE_TEST, the build fails. At the baseline, the
CONFIG_INET guard covered the helper, so this configuration built without
warnings.

Moving the helper out of the IPv4 block makes sense, because the IPv6
block needs it once IPV4 can be disabled. Could the helper get its own
guard instead, such as #if IS_ENABLED(CONFIG_INET) or
#if IS_ENABLED(CONFIG_IPV4) || IS_ENABLED(CONFIG_IPV6), closed before the
IPv4 block starts?

This still happens at the end of the series. The only configuration that
triggers it is INET=n. INET=y with both IPV4=n and IPV6=n cannot be
selected, because config IPV4 is only user-selectable when IPV6 is enabled
and defaults to INET.

>  static void br_arp_send(struct net_bridge *br, struct net_bridge_port *p,
>  			struct net_device *dev, __be32 dest_ip, __be32 src_ip,
>  			const unsigned char *dest_hw,

[ ... ]

-- 
Sashiko AI review · https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260928193046.6698-1-fmancera%40suse.de

  reply	other threads:[~2026-10-02 10:32 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260928193046.6698-1-fmancera@suse.de>
2026-09-28 19:29 ` [PATCH 01/16 net-next v2] ipv4: introduce CONFIG_IPV4 to decouple the IPv4 stack Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:29 ` [PATCH 02/16 net-next v2] net: core: add IPv4 fallback stubs and guards for CONFIG_IPV4=n Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:29 ` [PATCH 03/16 net-next v2] net: inet: relocate ip_generic_getfrag and guard IPv4 socket logic Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 04/16 net-next v2] tcp: move protocol agnostic TCP functions out of tcp_ipv4.c Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 05/16 net-next v2] ipv4: raw: split IPv4 specific logic into raw_ipv4.c Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 06/16 net-next v2] ipv4: udp: split IPv4 specific logic into udp_ipv4.c Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 07/16 net-next v2] ipv4: icmp: split IPv4 specific logic into icmp_ipv4.c Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 08/16 net-next v2] ipv4: ping: split IPv4 specific logic into ping_ipv4.c Fernando Fernandez Mancera
2026-09-28 19:30 ` [PATCH 09/16 net-next v2] ipv4: fib: split common nexthop logic to fib_core.c Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 10/16 net-next v2] tunnels: guard IPv4 tunnel functions with CONFIG_IPV4 Fernando Fernandez Mancera
2026-09-28 19:30 ` [PATCH 11/16 net-next v2] ipv4: disable IPv4-only sysctls when CONFIG_IPV4=n Fernando Fernandez Mancera
2026-09-29  7:14   ` Joel Granados
2026-09-29  8:20     ` Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 12/16 net-next v2] netfilter: ipv4: guard ip_route_me_harder() with CONFIG_IPV4 Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 13/16 net-next v2] net: bridge: guard ARP/RARP proxy and suppression " Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko [this message]
2026-09-28 19:30 ` [PATCH 14/16 net-next v2] wifi: mac80211: replace CONFIG_INET with CONFIG_IPV4 guards Fernando Fernandez Mancera
2026-09-28 19:30 ` [PATCH 15/16 net-next v2] netlabel: cipso: introduce CONFIG_CIPSO to decouple IPv4 dependency Fernando Fernandez Mancera
2026-09-30  1:37   ` Paul Moore
2026-10-02 10:32   ` netdev-bot+sashiko
2026-09-28 19:30 ` [PATCH 16/16 net-next v2] ipv4: make CONFIG_IPV4 boolean Fernando Fernandez Mancera
2026-10-02 10:32   ` netdev-bot+sashiko

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=179093714886.434549.12503393738688334727@kernel.org \
    --to=netdev-bot+sashiko@kernel.org \
    --cc=ardb@kernel.org \
    --cc=davem@davemloft.net \
    --cc=ebiggers@kernel.org \
    --cc=edumazet@google.com \
    --cc=edumazet@kernel.org \
    --cc=fmancera@suse.de \
    --cc=horms@kernel.org \
    --cc=krzk@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®