Ubuntu 16.04 / Linux version 4.4.0-47-generic / gcc version 5.4.0

I want to implement a container using linux cgroups and part of the implementation was to run the process into a new pid-namespace.

From documentation

Only signals for which the "init" process has established a signal handler can be sent to the "init" process by other members of the PID namespace. This restriction applies even to privileged processes, and prevents other members of the PID namespace from accidentally killing the "init" process.

Unfortunately this applies to the init process itself. For example, if an assertion breaks into the init process and it doesn't have a handler for sig6 the assert code will send a sig11.

Is there any way to disable this feature (at least in the case where the init process sends signals to itself). I can't enforce the init process to have signal handlers for this kind of scenarios and I want to know why did the process stop.

One small hack can be to create a dummy init process which will forward somehow the signal from the target program, but it's there a non-hackish solution for this?

  • A pod-namespace shouldn't be dissed unless it has been fully understood. – Buttle Butkus Nov 27 '16 at 20:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.