-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature Request: Support Two Phases to Start Exec Process like Init #3453
Comments
ping @AkihiroSuda @kolyshkin @thaJeztah ~ |
These commands would come in addition to the existing command? My first thought was "should this be defined in the runtime spec?", but it looks like |
I didn't find out a good way to work with current commandline 😂 I would like to use new sub-commands for this.
I found that the issue opencontainers/runtime-spec#345 said the exec should be handled by implementation. 😂 2016 |
I would also like to see this. |
Thanks for digging that up (I could've sworn exec was described, but from that link I see it was removed from the spec) So, yes, I'm not against adding this Let me also /cc @mrunalp (I see he was on that original discussion) |
Yes. That is why I want it to be like init process.
@thaJeztah Thanks! ping @AkihiroSuda @kolyshkin and @mrunalp ~ |
SGTM |
Thanks! I will file pr for this~ |
@fuweid Did you have a branch with this work? |
Sorry for late reply. I was distracted to handle other things. Sorry for that. |
Any progress on this issue? |
@pmengelbert sorry for that. please feel free to carry this. Thanks |
@pmengelbert Excuse me, Any progress on this issue? |
Currently, the exec-process is created by
runc-exec
one command.The common container engine layer will care about the exit code of
exec-process, which required that the
runc-exec
's parent processmust be the subreaper.
Since pidfd_open(2) is available, we can watch the exit event
by pidfd and retrieve the exit code provided bpf
sched_process_exit
tracepoint. The PID=1, like systemd, will be reaper of exec-process.
So, the common container engine is not required to be subreaper of
exec-process, like what embedshim containerd plugin does. However,
non-subreaper mode requires that exec-process starts in two phases.
Fork: Setup and waiting for the exec.fifo event
Exec: Signal the init and start to exec
Currently, embedshim uses runc-exec wrapper command to be temporary
subreaper to sync the status, like:
It is heavy mode to start exec-process for non-subreaper, so I file
this issue to request the feature for two phases to exec-process:
Looking foraward to the feedback! Thanks!
The text was updated successfully, but these errors were encountered: