[Lxc-users] lxc-unshare woes and signal forwarding in lxc-start

Daniel Lezcano daniel.lezcano at free.fr
Thu May 6 11:14:01 UTC 2010


Ferenc Wagner wrote:
> Daniel Lezcano <daniel.lezcano at free.fr> writes:
>
>   
>> Ferenc Wagner wrote:
>>
>>     
>>> I'd like to use lxc-start as a wrapper, invisible to the parent and
>>> the (jailed) child.  Of course I could hack around this by not
>>> exec-ing lxc-start but keeping the shell around, trap all signals and
>>> lxc-killing them forward.  But it's kind of ugly in my opinion.
>>>       
>> Ok, got it. I think that makes sense to forward the signals,
>> especially for job management.  What signals do you want to forward?
>>     
>
> Basically all of them.  I couldn't find a definitive list of signals
> used for job control in SGE, but the following is probably a good
> approximation: SIGTTOU, SIGTTIN, SIGUSR1, SIGUSR2, SIGCONT, SIGWINCH and
> SIGTSTP.  
Yes, that could be a good starting point. I was wondering about SIGSTOP 
being sent to lxc-start which is not forwardable of course, is it a 
problem ?

> This is application specific, though, lxc-start shouldn't have
> this hard-coded.
Ok, from the configuration then.

> Looking at the source, the SIGCHLD mechanism could be
> mimicked, but LXC_TTY_ADD_HANDLER may get in the way.
We should remove LXC_TTY_ADD_HANDLER and do everything in the signal 
handler of SIGCHLD by extending the handler. I have a pending fix 
changing a bit the signal handler function.
> I'm also worried
> about signals sent to the whole process group: they may be impossible to
> distinguish from the targeted signals and thus can't propagate correctly.
>   
Good point. Maybe we can setpgrp the first process of the container ?




More information about the lxc-users mailing list