On Mon, 2012-10-22 at 17:02 +0000, Myklebust, Trond wrote: > On Sun, 2012-10-21 at 09:26 -0700, Greg Kroah-Hartman wrote: > > On Sat, Oct 20, 2012 at 12:15:18AM +0100, Ben Hutchings wrote: > > > On Thu, Oct 18, 2012 at 08:16:25PM -0700, Greg Kroah-Hartman wrote: > > > > 3.0-stable review patch. If anyone has any objections, please let me > > > > know. > > > > > > > > ------------------ > > > > > > > > From: Stanislav Kinsbursky <skinsbur...@parallels.com> > > > > > > > > commit 303a7ce92064c285a04c870f2dc0192fdb2968cb upstream. > > > > > > > > Taking hostname from uts namespace if not safe, because this cuold be > > > > performind during umount operation on child reaper death. And in this > > > > case > > > > current->nsproxy is NULL already. > > > > > > In this case (3.0.y) you haven't included the following change > > > (commit cb7323fffa85 'lockd: create and use per-net NSM RPC clients on > > > MON/UNMON requests') that makes lockd actually use cl_nodename. I > > > think this patch alone won't fix the bug, as nsm_args::nodename can > > > end up pointing to freed memory. > > > > > > (I also wonder whether clients should really be per-net or per UTS > > > namespace, and whether those should be orthogonal namespaces at all.) > > > > Hm, Trond, should I also include the other commit above in the next > > 3.0-stable release? > > > > Or should this one be dropped? > > Hi Greg, > > Applying this patch shouldn't be harmful, but since it isn't actually > fixing a problem (there being no net-namespace code in Linux-3.0), I'd > suggest just dropping it.
If I understand rightly: 1. Prior to introduction of the per-netns clients, nsm_monitor() and nsm_unmonitor() are called from a kthread which runs in the initial net and utsname namespace. 2. Therefore, in nsm_mon_unmon(), current->nsproxy always refers to the initial namespaces and is never NULL. 3. The per-netns clients were introduced in 3.5, so only 3.6.y needed fixing. 4. However, this one change is harmless for earlier versions. (I think that point 1 is not quite true in that nsm_unmonitor() can also be called on module removal, potentially in something other than the initial utsname namespace. But it still won't result in a crash, and it's hardly worth worrying about.) Ben. -- Ben Hutchings Humour is the best antidote to reality.
signature.asc
Description: This is a digitally signed message part