All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Serge E. Hallyn" <serge-A9i7LUbDfNHQT0dZR+AlfA@public.gmane.org>
To: Matt Helsley <matthltc-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Cc: Containers
	<containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
Subject: Re: containerized syslog
Date: Sat, 13 Feb 2010 10:05:15 -0600	[thread overview]
Message-ID: <20100213160515.GA2255@hallyn.com> (raw)
In-Reply-To: <20100213155813.GU3714-52DBMbEzqgQ/wnmkkaCWp/UQ3DHhIser@public.gmane.org>

Quoting Matt Helsley (matthltc-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org):
> On Thu, Feb 11, 2010 at 01:29:52PM -0600, Serge E. Hallyn wrote:
> > Quoting Jean-Marc Pigeon (jmp-4qkeo2rQ0gg@public.gmane.org):
> > > Hello,
> > > 
> > > 
> > > > 
> > > > Thanks Jean-Marc.  But this really isn't doing most of what I'd
> > > > recommended in my last emails (both public and private.  In
> > > > particular:
> > > [....]	
> > > > 
> > > > syslog_ns should be moved into nsproxy and unshared with a
> > > > separate clone(CLONE_SYSLOG);
> > > 	This this not a problem.
> > > 	My understanding a new clone flag was not an option
> > > 	as we are short in CLONE flag.
> > > 	No design nor arch problem if we set  CLONE_SYSLOG
> > > 	to be 0x100000000  ?????
> > > 
> > > 	If moved in nsproxy what is the hook to
> > > 	get the "current context". (used current_user_ns()
> > > 	as it was in user_namespace).
> > > 
> > > 
> > > [...]	
> > > 
> > > > That was why I suggested:
> > > [...]
> > > > >! 4. take a printk call like the iptables ones you want and turn
> > > > >! int into nsprintk syscall.
> > > > >! 
> > > 
> > > 	If my understanding is right you propose to use a
> > > 	special nsprintk to be used by iptable such
> > > 	we can send "packet log" in "container context"
> > > 	Right?
> > > 
> > > 	Logic is weak.
> > 
> > No logic is irrefutable :)  Because:
> > 
> > > 	1)
> > > 	The way I changed printk, so far, make of it a "de facto"
> > > 	nsprintk. So when called from netfilter, nsprintk
> > > 	is still stay in HOST: context. My understanding,
> > 
> > No, it could be called from the context of a task in any
> > random container.
> 
> Your comments seem good. However, I do have an issue with the
> idea of finding a single syslog corresponding to the netns for
> a hypothetical printk in iptables.
> 
> What happens with:
> 
> /* in init_syslog_ns */
> clone(CLONE_SYSLOG) /* syslog_ns 1 */
> clone(CLONE_SYSLOG) /* syslog_ns 2 */
> <do something with iptables in the netns which triggers a printk>
> 
> Even though that same printk is relevant to three "syslogs", it'll
> only go to one, correct? If so, my feeling is that nsprintk
> shouldn't take a syslog_ns directly. It should take some other
> form of namespace and then write to the syslog of all the
> nsproxies which share that namespace (a netns in this case).

Could do that - but I think it'd be fair to just keep track of
a single netns->syslog_ns, namely the one which corresponded
to the netns when netns was created.

Don't allow unshare of syslog_ns, only clone.  That ensures that
the init task in a container will always be tied to the same
net, pid, and syslog namespaces, giving us a point of sanity.

-serge

  parent reply	other threads:[~2010-02-13 16:05 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1265915683.19130.166.camel@Mercier.safe.ca>
     [not found] ` <1265915683.19130.166.camel-4BUXZ/Ty1v7iqR6jatDSCA@public.gmane.org>
2010-02-11 19:29   ` containerized syslog Serge E. Hallyn
     [not found]     ` <20100211192952.GA20191-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2010-02-13 15:58       ` Matt Helsley
     [not found]         ` <20100213155813.GU3714-52DBMbEzqgQ/wnmkkaCWp/UQ3DHhIser@public.gmane.org>
2010-02-13 16:03           ` Matt Helsley
2010-02-13 16:05           ` Serge E. Hallyn [this message]
2010-05-12 14:57 Containerized syslog Jean-Philippe Menil

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100213160515.GA2255@hallyn.com \
    --to=serge-a9i7lubdfnhqt0dzr+alfa@public.gmane.org \
    --cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=matthltc-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.