[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150511.105308.148715905895080014.davem@davemloft.net>
Date: Mon, 11 May 2015 10:53:08 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: ebiederm@...ssion.com
Cc: ying.xue@...driver.com, netdev@...r.kernel.org,
cwang@...pensource.com, xemul@...nvz.org, eric.dumazet@...il.com,
maxk@....qualcomm.com, stephen@...workplumber.org, tgraf@...g.ch,
nicolas.dichtel@...nd.com, tom@...bertland.com,
jchapman@...alix.com, erik.hugne@...csson.com,
jon.maloy@...csson.com, horms@...ge.net.au,
herbert@...dor.apana.org.au
Subject: Re: [PATCH 0/6] Cleanup the kernel sockets.
From: ebiederm@...ssion.com (Eric W. Biederman)
Date: Fri, 08 May 2015 21:05:33 -0500
> Right now the situtation for allocating kernel sockets is a mess.
> - sock_create_kern does not take a namespace parameter.
> - kernel sockets must not reference count a network namespace and keep
> it alive or else we will have a reference counting loop.
> - The way we avoid the reference counting loop with sk_change_net
> and sk_release_kernel are major hacks.
>
> This patchset addresses this mess by fixing sock_create_kern to do
> everything necessary to create a kernel socket. None of the current
> users of kernel sockets need the network namespace reference counted.
> Either kernel sockets are network namespace aware (and using the current
> hacks) or kernel sockets are limited to the initial network namespace
> in which case it does not matter.
>
> This patchset starts by addressing tun which should be using normal
> userspace sockets like macvtap.
>
> Then sock_create_kern is fixed to take a network namespace.
> Then the in kernel status of sockets are passed through to sk_alloc.
> Then sk_alloc is fixed to not reference count the network namespace
> of kernel sockets.
> Then the callers of sock_create_kern are fixed up to stop using hacks.
> Then netlink which uses it's own flavor of sock_create_kern is fixed.
>
> Finally the hacks that are sk_change_net and sk_release_kernel are removed.
>
> When it is all done the code is easier to follow, easier to use, easier
> to maintain and shorter by about 70 lines.
>
> Reported-by: Ying Xue <ying.xue@...driver.com>
Looks good, applied to net-next, thanks Eric.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists