netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices.
@ 2013-01-07  7:19 Rami Rosen
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features Rami Rosen
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Rami Rosen @ 2013-01-07  7:19 UTC (permalink / raw)
  To: davem; +Cc: netdev, shemminger, ebiederm, Rami Rosen

When NETIF_F_NETNS_LOCAL feature is set in some network device,  
we do not allow this device to be moved from one network namespace 
to another (see dev_change_net_namespace()). Vlan device is not considered 
a local device and does not have the NETIF_F_NETNS_LOCAL feature. There is no 
reason that software devices like ppp and bridge will set the
NETIF_F_NETNS_LOCAL feature. This patchset removes NETIF_F_NETNS_LOCAL
from ppp and bridge devices.

* Changes from v1
	Do not remove NETIF_F_NETNS_LOCAL from vxlan devices. Moving vxlan device 
	to a different namesapce does not move the state of the UDP socket related 
	to this vxlan device (Following Stephen Hemminger comment).
	
Rami Rosen (2):
  [RFC PATCH v2 net-next 1/3] ppp: remove NETIF_F_NETNS_LOCAL from ppp
    device features.
  [RFC PATCH v2 net-next 2/3] bridge: remove NETIF_F_NETNS_LOCAL from
    bridge device features.

 drivers/net/ppp/ppp_generic.c | 1 -
 net/bridge/br_device.c        | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

-- 
1.7.11.7

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features.
  2013-01-07  7:19 [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Rami Rosen
@ 2013-01-07  7:19 ` Rami Rosen
  2013-01-07  9:16   ` Eric W. Biederman
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 2/2] bridge: remove NETIF_F_NETNS_LOCAL from bridge " Rami Rosen
  2013-01-07  9:25 ` [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Eric W. Biederman
  2 siblings, 1 reply; 6+ messages in thread
From: Rami Rosen @ 2013-01-07  7:19 UTC (permalink / raw)
  To: davem; +Cc: netdev, shemminger, ebiederm, Rami Rosen

There is no need for NETIF_F_NETNS_LOCAL for ppp device; this patch removes it.

Signed-off-by: Rami Rosen <ramirose@gmail.com>
---
 drivers/net/ppp/ppp_generic.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/ppp/ppp_generic.c b/drivers/net/ppp/ppp_generic.c
index 0b2706a..89b6fc5 100644
--- a/drivers/net/ppp/ppp_generic.c
+++ b/drivers/net/ppp/ppp_generic.c
@@ -1073,7 +1073,6 @@ static void ppp_setup(struct net_device *dev)
 	dev->tx_queue_len = 3;
 	dev->type = ARPHRD_PPP;
 	dev->flags = IFF_POINTOPOINT | IFF_NOARP | IFF_MULTICAST;
-	dev->features |= NETIF_F_NETNS_LOCAL;
 	dev->priv_flags &= ~IFF_XMIT_DST_RELEASE;
 }
 
-- 
1.7.11.7

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [RFC PATCH v2 net-next 2/2] bridge: remove NETIF_F_NETNS_LOCAL from bridge device features.
  2013-01-07  7:19 [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Rami Rosen
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features Rami Rosen
@ 2013-01-07  7:19 ` Rami Rosen
  2013-01-07  9:20   ` Eric W. Biederman
  2013-01-07  9:25 ` [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Eric W. Biederman
  2 siblings, 1 reply; 6+ messages in thread
From: Rami Rosen @ 2013-01-07  7:19 UTC (permalink / raw)
  To: davem; +Cc: netdev, shemminger, ebiederm, Rami Rosen

There is no need for NETIF_F_NETNS_LOCAL for bridge device; this patch removes it.

Signed-off-by: Rami Rosen <ramirose@gmail.com>
---
 net/bridge/br_device.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c
index e1bc090..0f88d21 100644
--- a/net/bridge/br_device.c
+++ b/net/bridge/br_device.c
@@ -344,7 +344,7 @@ void br_dev_setup(struct net_device *dev)
 
 	dev->features = NETIF_F_SG | NETIF_F_FRAGLIST | NETIF_F_HIGHDMA |
 			NETIF_F_GSO_MASK | NETIF_F_HW_CSUM | NETIF_F_LLTX |
-			NETIF_F_NETNS_LOCAL | NETIF_F_HW_VLAN_TX;
+			NETIF_F_HW_VLAN_TX;
 	dev->hw_features = NETIF_F_SG | NETIF_F_FRAGLIST | NETIF_F_HIGHDMA |
 			   NETIF_F_GSO_MASK | NETIF_F_HW_CSUM |
 			   NETIF_F_HW_VLAN_TX;
-- 
1.7.11.7

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features.
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features Rami Rosen
@ 2013-01-07  9:16   ` Eric W. Biederman
  0 siblings, 0 replies; 6+ messages in thread
From: Eric W. Biederman @ 2013-01-07  9:16 UTC (permalink / raw)
  To: Rami Rosen; +Cc: davem, netdev, shemminger

Rami Rosen <ramirose@gmail.com> writes:

> There is no need for NETIF_F_NETNS_LOCAL for ppp device; this patch
> removes it.

At least pppoe_rcv_core assumes that the ppp socket and the network
devices are all in the same network namespace.  So it looks like
NETIF_F_NETNS_LOCAL is needed.

Eric

> Signed-off-by: Rami Rosen <ramirose@gmail.com>
> ---
>  drivers/net/ppp/ppp_generic.c | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/drivers/net/ppp/ppp_generic.c b/drivers/net/ppp/ppp_generic.c
> index 0b2706a..89b6fc5 100644
> --- a/drivers/net/ppp/ppp_generic.c
> +++ b/drivers/net/ppp/ppp_generic.c
> @@ -1073,7 +1073,6 @@ static void ppp_setup(struct net_device *dev)
>  	dev->tx_queue_len = 3;
>  	dev->type = ARPHRD_PPP;
>  	dev->flags = IFF_POINTOPOINT | IFF_NOARP | IFF_MULTICAST;
> -	dev->features |= NETIF_F_NETNS_LOCAL;
>  	dev->priv_flags &= ~IFF_XMIT_DST_RELEASE;
>  }

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH v2 net-next 2/2] bridge: remove NETIF_F_NETNS_LOCAL from bridge device features.
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 2/2] bridge: remove NETIF_F_NETNS_LOCAL from bridge " Rami Rosen
@ 2013-01-07  9:20   ` Eric W. Biederman
  0 siblings, 0 replies; 6+ messages in thread
From: Eric W. Biederman @ 2013-01-07  9:20 UTC (permalink / raw)
  To: Rami Rosen; +Cc: davem, netdev, shemminger

Rami Rosen <ramirose@gmail.com> writes:

> There is no need for NETIF_F_NETNS_LOCAL for bridge device; this patch
> removes it.

At the very least add_del_if assumes are network devices are in the same
network namespace as the bridge.  So removing NETIF_F_NETNS_LOCAL is not
safe.


Eric

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices.
  2013-01-07  7:19 [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Rami Rosen
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features Rami Rosen
  2013-01-07  7:19 ` [RFC PATCH v2 net-next 2/2] bridge: remove NETIF_F_NETNS_LOCAL from bridge " Rami Rosen
@ 2013-01-07  9:25 ` Eric W. Biederman
  2 siblings, 0 replies; 6+ messages in thread
From: Eric W. Biederman @ 2013-01-07  9:25 UTC (permalink / raw)
  To: Rami Rosen; +Cc: davem, netdev, shemminger

Rami Rosen <ramirose@gmail.com> writes:

> When NETIF_F_NETNS_LOCAL feature is set in some network device,  
> we do not allow this device to be moved from one network namespace 
> to another (see dev_change_net_namespace()). Vlan device is not considered 
> a local device and does not have the NETIF_F_NETNS_LOCAL feature. There is no 
> reason that software devices like ppp and bridge will set the
> NETIF_F_NETNS_LOCAL feature. This patchset removes NETIF_F_NETNS_LOCAL
> from ppp and bridge devices.

After you saw the case for vxlan I am disappointed you respun this
patchset without asking the question: Could other devices suffer
from the same class of problem.

It didn't take me more than a few minutes of looking to see that the
bridge and the ppp network device have the same class of issue as
vxlan.

> * Changes from v1
> 	Do not remove NETIF_F_NETNS_LOCAL from vxlan devices. Moving vxlan device 
> 	to a different namesapce does not move the state of the UDP socket related 
> 	to this vxlan device (Following Stephen Hemminger comment).
> 	
> Rami Rosen (2):
>   [RFC PATCH v2 net-next 1/3] ppp: remove NETIF_F_NETNS_LOCAL from ppp
>     device features.
>   [RFC PATCH v2 net-next 2/3] bridge: remove NETIF_F_NETNS_LOCAL from
>     bridge device features.
>
>  drivers/net/ppp/ppp_generic.c | 1 -
>  net/bridge/br_device.c        | 2 +-
>  2 files changed, 1 insertion(+), 2 deletions(-)

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-01-07  9:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-07  7:19 [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Rami Rosen
2013-01-07  7:19 ` [RFC PATCH v2 net-next 1/2] ppp: remove NETIF_F_NETNS_LOCAL from ppp device features Rami Rosen
2013-01-07  9:16   ` Eric W. Biederman
2013-01-07  7:19 ` [RFC PATCH v2 net-next 2/2] bridge: remove NETIF_F_NETNS_LOCAL from bridge " Rami Rosen
2013-01-07  9:20   ` Eric W. Biederman
2013-01-07  9:25 ` [RFC PATCH v2 net-next 0/2] Remove NETIF_F_NETNS_LOCAL from software devices Eric W. Biederman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).