From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4D94743B3DB for ; Mon, 13 Jul 2026 14:57:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.135.223.130 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783954649; cv=none; b=YcRE8iB/r/yTXvNJ0wWsN+sgTfwsb0aMhDQw21bEX5wVnU63x3tgHBZlz7MlxM9pIjaK7cvOBsljEsCqseP/xgSvm89Vaz0yyMr8ET11WV++6CBQqCi76wRyCqfYzLrfGEkKTG0dCQGNq71jTDio3yTVk+RZuitHU5dcDKXURP8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783954649; c=relaxed/simple; bh=6ABN5gkGY/3/F9k+Yhjq2Bu4+3LHZvglZfQ52vr+EhU=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=r+8LAukea/ASaBTHpdj4igUmi//z7CTARoyYXuP6GFAA2F5ICidfWcMisPGrPSu7YRlYVYcj4vNbpilz0qLjy7Ic1UVXN+RwcQmLB7uTi7ivv//2zzSrrSCNeErq1SzuLxU5aylaMyOHAbdH27MjFwviI3BZdn56er1o9I7POo8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de; spf=pass smtp.mailfrom=suse.de; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=mUOJSina; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=soR5R82M; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=QCgcM+Km; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=Qj912vQy; arc=none smtp.client-ip=195.135.223.130 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="mUOJSina"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="soR5R82M"; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="QCgcM+Km"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="Qj912vQy" Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 9421477946; Mon, 13 Jul 2026 14:57:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1783954643; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=w87g+D5SReWeuPg85I2R5REzG6jyR6WyeIEK7Oxt9Lo=; b=mUOJSinalmE2ffsIONe157EXkZKLQiaoGJH7cUzcDCHJsvyT/YUW6QuDQdlluxQU5zFHak 5uHtBuxO+EDEO3tY/uW/kT0Q+9CKaedFem3BYOwQZylEsnA3ROaZTnHJoDU9pP31T7KNua FLhrxB64E1UoSdV30u6p/XQXxmFjXAE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1783954643; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=w87g+D5SReWeuPg85I2R5REzG6jyR6WyeIEK7Oxt9Lo=; b=soR5R82MF+Mu62i1L4HAbEIJ6vWZYBeWi31SZE979/ua2yD3lsy6IUUD318V2ruAhjzKga HyBGeXDFxDaXaiAQ== Authentication-Results: smtp-out1.suse.de; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1783954642; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=w87g+D5SReWeuPg85I2R5REzG6jyR6WyeIEK7Oxt9Lo=; b=QCgcM+Km5SZY8NOHjlCw3HosC8zS+PF0scHR2IwLdplL87Eaem5ybUMwG87hdA1rjngrmv jfc2mqfXpfb9US5KoGmzJi4CuAqmiNBxt9mvN6apbKj7smPvowzdTcGXq+YNh7slMzW9Ry eebKIgGCE6urB9kYpA+nMZpQoDQl6tw= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1783954642; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=w87g+D5SReWeuPg85I2R5REzG6jyR6WyeIEK7Oxt9Lo=; b=Qj912vQywvUs7wBqJ2BfrXiTmJvI4xAWx3e/pTEHECGFv+xcUxTb2o5xyu7np2AqVZnxUQ B7mpilofPRlrSBAw== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 9F73A779AE; Mon, 13 Jul 2026 14:57:09 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id jkEmIMX8VGogSgAAD6G6ig (envelope-from ); Mon, 13 Jul 2026 14:57:09 +0000 Message-ID: Date: Mon, 13 Jul 2026 16:57:02 +0200 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 01/13 RFC net-next] net: ipv4: introduce CONFIG_IPV4 to decouple the IPv4 stack To: Arnd Bergmann , Netdev Cc: "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , David Ahern , Simon Horman , Ido Schimmel , Jason Gunthorpe , Leon Romanovsky , Andrew Lunn , Anthony L Nguyen , Przemek Kitszel , Elad Nachman , Saeed Mahameed , Tariq Toukan , Mark Bloch , Petr Machata , Edward Cree , Maxime Coquelin , Alexandre Torgue , Arend van Spriel , Miri Korenblit , Keith Busch , Jens Axboe , Christoph Hellwig , Sagi Grimberg , Chaitanya Kulkarni , Saurav Kashyap , Javed Hasan , GR-QLogic-Storage-Upstream@marvell.com, "James E . J . Bottomley" , "Martin K. Petersen" , Nilesh Javali , Manish Rangankar , Varun Prakash , Alexander Viro , Christian Brauner , Jan Kara , David Howells , Marc Dionne , Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , NeilBrown , Olga Kornievskaia , Dai Ngo , Tom Talpey , Marek Lindner , Simon Wunderlich , Antonio Quartulli , Sven Eckelmann , Nikolay Aleksandrov , Pablo Neira Ayuso , Florian Westphal , Phil Sutter , Johannes Berg , Matthieu Baerts , Mat Martineau , Geliang Tang , Julian Anastasov , Aaron Conole , Eelco Chaudron , Ilya Maximets , Allison Henderson , Jamal Hadi Salim , Jiri Pirko , Marcelo Ricardo Leitner , Xin Long , "D. Wythe" , Dust Li , Sidraya Jayagond , Wenjia Zhang , Mahanta Jambigi , Tony Lu , Wen Gu , Jon Maloy , Steffen Klassert , Herbert Xu , Vikas Gupta , Rajashekar Hudumula , Justin Chen , Bhargava Marreddy , Nicolai Buchwitz , Florian Fainelli , Heiner Kallweit , Krzysztof Kozlowski , Russell King , Yao Zi , Yanteng Si , Maxime Chevallier , Julian Braha , Joey Lu , Shangjuan Wei , Chen-Yu Tsai , Inochi Amaoto , "Lad, Prabhakar" , Qingfang Deng , Greg Kroah-Hartman , Eric Biggers , Ethan Nelson-Moore , Ard Biesheuvel , Dmitry Safonov <0x7f454c46@gmail.com>, Kuniyuki Iwashima , Alyssa Ross , linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, "intel-wired-lan@lists.osuosl.org" , "open list:NETRONOME ETHERNET DRIVERS" , linux-net-drivers@amd.com, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-nvme@lists.infradead.org, linux-scsi@vger.kernel.org, target-devel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-afs@lists.infradead.org, linux-nfs@vger.kernel.org, b.a.t.m.a.n@lists.open-mesh.org, "open list:ETHERNET BRIDGE" , netfilter-devel@vger.kernel.org, coreteam@netfilter.org, mptcp@lists.linux.dev, lvs-devel@vger.kernel.org, dev@openvswitch.org, rds-devel@oss.oracle.com, linux-sctp@vger.kernel.org, linux-s390@vger.kernel.org, "open list:TIPC NETWORK LAYER" References: <20260712013941.4570-1-fmancera@suse.de> <20260712013941.4570-2-fmancera@suse.de> <12ffac6a-649a-4e4a-8d12-0b48171e1d95@app.fastmail.com> <2256daf4-d03c-4a57-9d72-7a388d823f18@suse.de> <713178ff-0fb2-4f1b-90bc-9841cd42c20e@app.fastmail.com> Content-Language: en-US From: Fernando Fernandez Mancera In-Reply-To: <713178ff-0fb2-4f1b-90bc-9841cd42c20e@app.fastmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Flag: NO X-Spamd-Result: default: False [-0.80 / 50.00]; BAYES_HAM(-3.00)[100.00%]; FORGED_RECIPIENTS(2.00)[m:arnd@arndb.de,m:davem@davemloft.net,m:edumazet@google.com,m:kuba@kernel.org,m:dsahern@kernel.org,m:horms@kernel.org,m:idosch@nvidia.com,m:leon@kernel.org,m:andrew+netdev@lunn.ch,m:anthony.l.nguyen@intel.com,m:przemyslaw.kitszel@intel.com,m:enachman@marvell.com,m:saeedm@nvidia.com,m:tariqt@nvidia.com,m:mbloch@nvidia.com,m:petrm@nvidia.com,m:ecree.xilinx@gmail.com,m:mcoquelin.stm32@gmail.com,m:alexandre.torgue@foss.st.com,m:arend.vanspriel@broadcom.com,m:miriam.rachel.korenblit@intel.com,m:kbusch@kernel.org,m:axboe@kernel.dk,m:hch@lst.de,m:sagi@grimberg.me,m:kch@nvidia.com,m:skashyap@marvell.com,m:jhasan@marvell.com,m:GR-QLogic-Storage-Upstream@marvell.com,m:James.Bottomley@hansenpartnership.com,m:njavali@marvell.com,m:mrangankar@marvell.com,m:varun@chelsio.com,m:brauner@kernel.org,m:marc.dionne@auristor.com,m:trondmy@kernel.org,m:anna@kernel.org,m:cel@kernel.org,m:jlayton@kernel.org,m:neil@brown.name,m:marek.lindner@mailbox.org,m:antonio@mandelbit.com,m:sven @narfation.org,m:razor@blackwall.org,m:pablo@netfilter.org,m:phil@nwl.cc,m:matttbe@kernel.org,m:martineau@kernel.org,m:geliang@kernel.org,m:achender@kernel.org,m:jhs@mojatatu.com,m:marcelo.leitner@gmail.com,m:lucien.xin@gmail.com,m:alibuda@linux.alibaba.com,m:dust.li@linux.alibaba.com,m:sidraya@linux.ibm.com,m:wenjia@linux.ibm.com,m:mjambigi@linux.ibm.com,m:tonylu@linux.alibaba.com,m:guwen@linux.alibaba.com,m:herbert@gondor.apana.org.au,m:vikas.gupta@broadcom.com,m:rajashekar.hudumula@broadcom.com,m:justin.chen@broadcom.com,m:bhargava.marreddy@broadcom.com,m:florian.fainelli@broadcom.com,m:hkallweit1@gmail.com,m:krzk@kernel.org,m:rmk+kernel@armlinux.org.uk,m:siyanteng@cqsoftware.com.cn,m:maxime.chevallier@bootlin.com,m:julianbraha@gmail.com,m:a0987203069@gmail.com,m:weishangjuan@eswincomputing.com,m:wens@kernel.org,m:inochiama@gmail.com,m:prabhakar.mahadev-lad.rj@bp.renesas.com,s:rds-devel@oss.oracle.com,s:linux-stm32@st-md-mailman.stormreply.com,s:linux-fsdevel@vger.kernel.org,s:li nux-kernel@vger.kernel.org,s:linux-nfs@vger.kernel.org,s:linux-rdma@vger.kernel.org,s:linux-s390@vger.kernel.org,s:linux-scsi@vger.kernel.org,s:linux-sctp@vger.kernel.org,s:linux-wireless@vger.kernel.org,s:lvs-devel@vger.kernel.org,s:netfilter-devel@vger.kernel.org,s:target-devel@vger.kernel.org]; SUSPICIOUS_RECIPS(1.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; FUZZY_RATELIMITED(0.00)[rspamd.com]; TAGGED_RCPT(0.00)[netdev,kernel]; MIME_TRACE(0.00)[0:+]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; TO_DN_EQ_ADDR_SOME(0.00)[]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FROM_HAS_DN(0.00)[]; FREEMAIL_CC(0.00)[davemloft.net,google.com,kernel.org,redhat.com,nvidia.com,ziepe.ca,lunn.ch,intel.com,marvell.com,gmail.com,foss.st.com,broadcom.com,kernel.dk,lst.de,grimberg.me,hansenpartnership.com,oracle.com,chelsio.com,zeniv.linux.org.uk,suse.cz,auristor.com,brown.name,talpey.com,mailbox.org,simonwunderlich.de,mandelbit.com,narfation.org,blackwall.org,netfilter.org,strlen.de,nwl.cc,sipsolutions.net,ssi.bg,ovn.org,mojatatu.com,resnulli.us,linux.alibaba.com,linux.ibm.com,secunet.com,gondor.apana.org.au,tipi-net.de,armlinux.org.uk,ziyao.cc,cqsoftware.com.cn,bootlin.com,eswincomputing.com,bp.renesas.com,linux.dev,linuxfoundation.org,alyssa.is,vger.kernel.org,lists.osuosl.org,corigine.com,amd.com,st-md-mailman.stormreply.com,lists.infradead.org,lists.linux.dev,lists.open-mesh.org,openvswitch.org,oss.oracle.com,lists.sourceforge.net]; R_RATELIMIT(0.00)[to_ip_from(RLfq5kykfpncma7xtz19gpw48x)]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCPT_COUNT_GT_50(0.00)[134]; DBL_BLOCKED_OPENRESOLVER(0.00)[imap1.dmz-prg2.suse.org:helo,suse.de:mid] X-Spam-Level: X-Spam-Score: -0.80 On 7/13/26 4:22 PM, Arnd Bergmann wrote: > On Mon, Jul 13, 2026, at 16:00, Fernando Fernandez Mancera wrote: >> On 7/12/26 1:01 PM, Arnd Bergmann wrote: >>> On Sun, Jul 12, 2026, at 03:38, Fernando Fernandez Mancera wrote: >>>> Historically, the IPv4 protocol has been linked to the core INET >>>> subsystem. Because shared infrastructure like the TCP/UDP engine, >>>> routing or INET hashtables live inside net/ipv4/, it has been impossible >>>> to compile a kernel with only IPv6 support. >>>> >>>> This patch introduces the CONFIG_IPV4 Kconfig symbol, which is set to >>>> 'def_bool y' for now. This does not allow to completely disable the >>>> IPv4 stack yet but it lays the necessary build-system work for that >>>> goal. >>> >>> I expect this will cause additional (trivial) build regression in the >>> next step when randconfig builds run into obscure corner cases, either >>> with INET=y IPV4=n IPV6=y or with INET=y IPV4=n IPV6=n. >>> >>> I can probably give your patch (with IPV4 visible or disabled) an >>> early go on the randconfig tree to find these more quickly. >>> If I run into regressions, should I just add more 'depends on IPV4', >>> or do you have other plans? >>> >> >> Yes, I have a job running randconfig and verifying nothing breaks. If >> something breaks and it isn't core networking stack I would just make >> the Kconfig symbol depend on IPv4. >> >> Then later we will have more time to write a dedicate patch so it does >> not depend on IPv4. > > Ok > >>> Should we have some logic to ensure that at least one of IPV4 or >>> IPV6 is enabled? I think this would work >>> >>> config IPV4 >>> bool "The IPv4 protocol" if IPV6 >>> default INET >>> >>> which only allows turning IPV4 off if IPV6 has enabled. >>> >> >> I do wonder, should we? I mean, I didn't try it off but I don't see why >> we should not allow a pure L2 system.. > > I expected a pure L2 system to be CONFIG_ETHERNET=y CONFIG_INET=n. > > Which user-visible parts of CONFIG_INET would you want keep working > when both v4 and v6 are disabled? > Yes, you are right. So I think introducing something as you proposed makes sense. Right now I cannot think about something needed from INET for pure L2. Thank you! Fernando.