Re: uevent when moving nic between network namespaces?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx> writes:

> Quoting Eric W. Biederman (ebiederm@xxxxxxxxxxxx):
>> I am not currently working on a patch for this, but I will be happy to
>> review one. At a quick glance it looks like this could just be as
>> simple as calling kobject_uevent at the proper time, but testing and
>> reading through the relevant code paths is probably a good idea as there
>> always seems to be gotchas in that code.
>> 
>> Eric
>
> This (the simple fix) works for me, actually.
>
> I do notice the ifdef shouldn't be needed, all the better.

Should we have a KOBJ_ADD in the new network namespace or is the
KOBJ_MOVE sufficient?

Eric

> From b436802aa8ae80f699b3d7bcf584d3e86af7355a Mon Sep 17 00:00:00 2001
> From: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
> Date: Fri, 12 Oct 2012 21:42:05 +0100
> Subject: [PATCH 1/1] dev_change_net_namespace: send a KOBJ_REMOVED to
>  original netns
>
> Signed-off-by: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
> ---
>  net/core/dev.c |    4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/net/core/dev.c b/net/core/dev.c
> index e2215ee..8062a5a 100644
> --- a/net/core/dev.c
> +++ b/net/core/dev.c
> @@ -6172,6 +6172,10 @@ int dev_change_net_namespace(struct net_device *dev, struct net *net, const char
>  	dev_uc_flush(dev);
>  	dev_mc_flush(dev);
>  
> +	/* Send a netdev-removed uevent to the old namespace */
> +#ifdef CONFIG_HOTPLUG
> +	kobject_uevent(&dev->dev.kobj, KOBJ_REMOVE);
> +#endif
>  	/* Actually switch the network namespace */
>  	dev_net_set(dev, net);
_______________________________________________
Containers mailing list
Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/containers


[Index of Archives]     [Cgroups]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux