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 01/16 net-next v2] ipv4: introduce CONFIG_IPV4 to decouple the IPv4 stack
Date: Fri, 02 Oct 2026 10:32:16 +0000 [thread overview]
Message-ID: <179093713623.434549.10029309690029336462@kernel.org> (raw)
In-Reply-To: <20260928193046.6698-2-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] The patch moves route.o, arp.o, icmp and the other IPv4-only
objects under obj-$(CONFIG_IPV4) and adds `depends on IPV4` / `depends…
--
ipv4: introduce CONFIG_IPV4 to decouple the IPv4 stack
This commit adds a CONFIG_IPV4 symbol, which is def_bool y for now. It
moves the IPv4-only objects in net/ipv4/Makefile under obj-$(CONFIG_IPV4).
It also adds IPV4 (or IPV4 || !INET) dependencies to a number of drivers,
filesystems and networking features that use those symbols.
> diff --git a/net/ipv4/Makefile b/net/ipv4/Makefile
> index 06e21c26b76f..8b148be79fa4 100644
> --- a/net/ipv4/Makefile
> +++ b/net/ipv4/Makefile
> @@ -3,18 +3,17 @@
> # Makefile for the Linux TCP/IP (INET) layer.
> #
>
> -obj-y := route.o inetpeer.o protocol.o \
> - ip_input.o ip_fragment.o ip_forward.o ip_options.o \
> - ip_output.o ip_sockglue.o inet_hashtables.o \
> - inet_timewait_sock.o inet_connection_sock.o \
> - tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \
> +obj-y := inetpeer.o protocol.o inet_hashtables.o inet_timewait_sock.o \
> + inet_connection_sock.o tcp.o tcp_input.o tcp_output.o tcp_timer.o \
> tcp_minisocks.o tcp_cong.o tcp_metrics.o tcp_fastopen.o \
> - tcp_recovery.o tcp_ulp.o \
> - tcp_offload.o tcp_plb.o datagram.o raw.o udp.o \
> - udp_offload.o arp.o icmp.o devinet.o af_inet.o igmp.o \
> - fib_frontend.o fib_semantics.o fib_trie.o fib_notifier.o \
> - inet_fragment.o ping.o ip_tunnel_core.o gre_offload.o \
> - metrics.o netlink.o nexthop.o udp_tunnel_stub.o
> + tcp_recovery.o tcp_ulp.o tcp_offload.o tcp_plb.o raw.o udp.o \
> + udp_offload.o af_inet.o inet_fragment.o ping.o ip_tunnel_core.o \
> + gre_offload.o metrics.o netlink.o nexthop.o udp_tunnel_stub.o
> +
> +obj-$(CONFIG_IPV4) += route.o ip_input.o ip_fragment.o ip_forward.o ip_options.o \
> + ip_sockglue.o tcp_ipv4.o datagram.o icmp.o arp.o devinet.o \
> + igmp.o fib_notifier.o ip_output.o fib_frontend.o \
> + fib_semantics.o fib_trie.o
[Severity: Low]
Is SUNVNET_COMMON missing from the list of consumers that gained an IPV4
dependency? Its Kconfig entry is unchanged:
drivers/net/ethernet/sun/Kconfig:
config SUNVNET_COMMON
tristate "Common routines to support Sun Virtual Networking"
depends on SUN_LDOMS
depends on INET
default m
vnet_start_xmit() in drivers/net/ethernet/sun/sunvnet_common.c calls
icmp_ndo_send(). The only guard is a runtime protocol check:
if (skb->protocol == htons(ETH_P_IP))
icmp_ndo_send(skb, ICMP_DEST_UNREACH, ICMP_FRAG_NEEDED,
htonl(localmtu));
include/net/icmp.h has no !CONFIG_IPV4 stub for icmp_ndo_send() or
__icmp_send(). The "Core Netfilter Configuration" menu now depends on
IPV4, so NF_NAT is n when IPV4=n. In that case icmp_ndo_send() is the
inline wrapper that calls __icmp_send() directly.
With IPV4 set to def_bool y, this can't happen yet. After the later
"ipv4: make CONFIG_IPV4 boolean" change, __icmp_send() is defined only in
net/ipv4/icmp_ipv4.c, and that file is built only through
obj-$(CONFIG_IPV4).
Consider a sparc64 config with SUN_LDOMS=y, INET=y, IPV6=y and IPV4=n.
SUNVNET_COMMON defaults to m there. Would that config fail at modpost
with an undefined __icmp_send?
Nothing later in the series seems to add an IPV4 dependency to
SUNVNET_COMMON, or a guard or stub for icmp_ndo_send(). Would a
"depends on IPV4 || !INET" line, like the one used for sfc, stmmac and
mlxsw, be appropriate here?
Other drivers with a similar pattern, such as bnxt, nfp and cnic, look
fine at the end of the series. They reach ip_route_output_flow(), and
"net: core: add IPv4 fallback stubs and guards for CONFIG_IPV4=n" stubs
that function in include/net/route.h to return ERR_PTR(-EAFNOSUPPORT).
>
> obj-$(CONFIG_NET_IP_TUNNEL) += ip_tunnel.o
> obj-$(CONFIG_SYSCTL) += sysctl_net_ipv4.o
[ ... ]
--
Sashiko AI review · https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260928193046.6698-1-fmancera%40suse.de
next prev parent 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 ` Fernando Fernandez Mancera
2026-10-02 10:32 ` netdev-bot+sashiko [this message]
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
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=179093713623.434549.10029309690029336462@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®