Re: [PATCH] net: Resend IGMP memberships upon peer notification.

2017-03-14 Thread David Miller
From: Vladislav Yasevich 
Date: Tue, 14 Mar 2017 08:58:08 -0400

> When we notify peers of potential changes,  it's also good to update
> IGMP memberships.  For example, during VM migration, updating IGMP
> memberships will redirect existing multicast streams to the VM at the
> new location.
> 
> Signed-off-by: Vladislav Yasevich 

Applied, thanks Vlad.


Re: [PATCH] net: Resend IGMP memberships upon peer notification.

2017-03-14 Thread Michael S. Tsirkin
On Tue, Mar 14, 2017 at 08:58:08AM -0400, Vladislav Yasevich wrote:
> When we notify peers of potential changes,  it's also good to update
> IGMP memberships.  For example, during VM migration, updating IGMP
> memberships will redirect existing multicast streams to the VM at the
> new location.
> 
> Signed-off-by: Vladislav Yasevich 

Seems to make sense

Acked-by: Michael S. Tsirkin 

but I also think there's another problem: source does not
leave the groups on migration. So I think we should add code on the
host - it's snooping IGMPs so it should be able to leave groups on the
source when VM is disconnected.



> ---
>  net/core/dev.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/net/core/dev.c b/net/core/dev.c
> index a229bf0..1ed927d 100644
> --- a/net/core/dev.c
> +++ b/net/core/dev.c
> @@ -1272,6 +1272,7 @@ void netdev_notify_peers(struct net_device *dev)
>  {
>   rtnl_lock();
>   call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, dev);
> + call_netdevice_notifiers(NETDEV_RESEND_IGMP, dev);
>   rtnl_unlock();
>  }
>  EXPORT_SYMBOL(netdev_notify_peers);
> -- 
> 2.7.4


Re: [PATCH] net: Resend IGMP memberships upon peer notification.

2017-03-14 Thread Michael S. Tsirkin
On Tue, Mar 14, 2017 at 08:58:08AM -0400, Vladislav Yasevich wrote:
> When we notify peers of potential changes,  it's also good to update
> IGMP memberships.  For example, during VM migration, updating IGMP
> memberships will redirect existing multicast streams to the VM at the
> new location.
> 
> Signed-off-by: Vladislav Yasevich 


what will happen on the source? will the snooping bridge remove
membership on port removal as appropriate?

> ---
>  net/core/dev.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/net/core/dev.c b/net/core/dev.c
> index a229bf0..1ed927d 100644
> --- a/net/core/dev.c
> +++ b/net/core/dev.c
> @@ -1272,6 +1272,7 @@ void netdev_notify_peers(struct net_device *dev)
>  {
>   rtnl_lock();
>   call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, dev);
> + call_netdevice_notifiers(NETDEV_RESEND_IGMP, dev);
>   rtnl_unlock();
>  }
>  EXPORT_SYMBOL(netdev_notify_peers);
> -- 
> 2.7.4


[PATCH] net: Resend IGMP memberships upon peer notification.

2017-03-14 Thread Vladislav Yasevich
When we notify peers of potential changes,  it's also good to update
IGMP memberships.  For example, during VM migration, updating IGMP
memberships will redirect existing multicast streams to the VM at the
new location.

Signed-off-by: Vladislav Yasevich 
---
 net/core/dev.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/net/core/dev.c b/net/core/dev.c
index a229bf0..1ed927d 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1272,6 +1272,7 @@ void netdev_notify_peers(struct net_device *dev)
 {
rtnl_lock();
call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, dev);
+   call_netdevice_notifiers(NETDEV_RESEND_IGMP, dev);
rtnl_unlock();
 }
 EXPORT_SYMBOL(netdev_notify_peers);
-- 
2.7.4