[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150509023853.GA19695@gondor.apana.org.au>
Date: Sat, 9 May 2015 10:38:53 +0800
From: Herbert Xu <herbert@...dor.apana.org.au>
To: "Eric W. Biederman" <ebiederm@...ssion.com>
Cc: davem@...emloft.net, Ying Xue <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
Subject: Re: [PATCH 0/6] Cleanup the kernel sockets.
On Fri, May 08, 2015 at 09:05:33PM -0500, Eric W. Biederman wrote:
>
> 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 to me.
Thanks,
--
Email: Herbert Xu <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
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