mbox series

[net-next,0/3] A own subdirectory for shared TCP code

Message ID 20171003222213.7996-1-richard_siegfried@systemli.org
Headers show
Series A own subdirectory for shared TCP code | expand

Message

Richard Sailer Oct. 3, 2017, 10:22 p.m. UTC
net/ipv4 currently contains around 100 source files containing the
IP implementation and lots of other functionality (UDP, TCP, xfrm, etc.)

# 1/3
To make the networking source tree more self documenting and well 
structured 1/3 moves the 30 shared TCP source files to a own 
subdirectory of net/ipv4/.

# 2/3 
A huge part of the TCP code is congestion control algorithms.
With the same goal as above, this moves the cc algos to a own
subdirectory of net/ipv4/tcp/

# 3/3
Implementation of a suggestion of valdis, to have a new directory
net/ipv4v6_shared that contains all the code shared between
IPv4 and IPv6. This creates net/ipv4v6_shared and moves the 
net/ipv4/tcp directory of shared TCP code there.

While every commit depends on its previous commits, it is
also possible and sensible to only apply (1) or (1,2) , depending
on how conservative one wants to decide regarding directory
structure changes.

[PATCH net-next 1/3] net/ipv4: Move shared tcp code to own subdirectory
[PATCH net-next 2/3] tcp: Move cc algorithms to own subdirectory
[PATCH net-next 3/3] Move shared tcp code to net/ipv4v6shared

Comments

Eric Dumazet Oct. 3, 2017, 10:42 p.m. UTC | #1
On Wed, 2017-10-04 at 00:22 +0200, Richard Sailer wrote:
> net/ipv4 currently contains around 100 source files containing the
> IP implementation and lots of other functionality (UDP, TCP, xfrm, etc.)
> 
> # 1/3
> To make the networking source tree more self documenting and well 
> structured 1/3 moves the 30 shared TCP source files to a own 
> subdirectory of net/ipv4/.
> 
> # 2/3 
> A huge part of the TCP code is congestion control algorithms.
> With the same goal as above, this moves the cc algos to a own
> subdirectory of net/ipv4/tcp/
> 
> # 3/3
> Implementation of a suggestion of valdis, to have a new directory
> net/ipv4v6_shared that contains all the code shared between
> IPv4 and IPv6. This creates net/ipv4v6_shared and moves the 
> net/ipv4/tcp directory of shared TCP code there.
> 
> While every commit depends on its previous commits, it is
> also possible and sensible to only apply (1) or (1,2) , depending
> on how conservative one wants to decide regarding directory
> structure changes.
> 
> [PATCH net-next 1/3] net/ipv4: Move shared tcp code to own subdirectory
> [PATCH net-next 2/3] tcp: Move cc algorithms to own subdirectory
> [PATCH net-next 3/3] Move shared tcp code to net/ipv4v6shared


NACK for the whole series.

Simple reason :

This is going to be a maintenance nightmare, for people dealing with TCP
stack every day.
David Miller Oct. 3, 2017, 11:03 p.m. UTC | #2
From: Richard Sailer <richard_siegfried@systemli.org>
Date: Wed,  4 Oct 2017 00:22:10 +0200

> net/ipv4 currently contains around 100 source files containing the
> IP implementation and lots of other functionality (UDP, TCP, xfrm, etc.)

As someone who has to do backports regularly to -stable, there is no way
I am applying this.

Sorry.
Richard Sailer Oct. 4, 2017, 6:54 p.m. UTC | #3
On 04/10/17 01:03, David Miller wrote:
> As someone who has to do backports regularly to -stable, there is no way
> I am applying this.
> 
> Sorry.
Okay, I see.

Is grouping files into subdirectories something generally
unwanted/unlikely to be applied or is this specific to TCP / networking?

Because there are several other places in the source tree where I would
like to group things.
Andrew Lunn Oct. 4, 2017, 8:27 p.m. UTC | #4
On Wed, Oct 04, 2017 at 08:54:17PM +0200, Richard Siegfried wrote:
> On 04/10/17 01:03, David Miller wrote:
> > As someone who has to do backports regularly to -stable, there is no way
> > I am applying this.
> > 
> > Sorry.
> Okay, I see.
> 
> Is grouping files into subdirectories something generally
> unwanted/unlikely to be applied or is this specific to TCP / networking?
> 
> Because there are several other places in the source tree where I would
> like to group things.

Hi Richard

It is generally unwanted.

Have you tried back porting patches when the directory structure has
changed? Files have moved around? It makes it a lot harder to
do. Meaning patches are going to be back ported less often. Fixes
which could be security relevant might not get back ported, etc.

Kernel 4.4 is going to be supported until 2022. So moving files around
is going to make Greg Kroah-Hartman life more difficult for the next 5
years.

	Andrew
Richard Sailer Oct. 5, 2017, 1:17 p.m. UTC | #5
On 04/10/17 22:27, Andrew Lunn wrote:
> Hi Richard
> 
> It is generally unwanted.
> 
> Have you tried back porting patches when the directory structure has
> changed? Files have moved around? It makes it a lot harder to
> do. Meaning patches are going to be back ported less often. Fixes
> which could be security relevant might not get back ported, etc.
> 
> Kernel 4.4 is going to be supported until 2022. So moving files around
> is going to make Greg Kroah-Hartman life more difficult for the next 5
> years.
Ok, I see