mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
Port containerd fix https://github.com/containerd/containerd/pull/2877. (#12)
Adds a timeout and cancel to shim fifo open Signed-off-by: Lantao Liu <lantaol@google.com>
This commit is contained in:
@@ -191,6 +191,12 @@ func (e *execProcess) start(ctx context.Context) (err error) {
|
||||
e.stdin = sc
|
||||
}
|
||||
var copyWaitGroup sync.WaitGroup
|
||||
ctx, cancel := context.WithTimeout(ctx, 30*time.Second)
|
||||
defer func() {
|
||||
if err != nil {
|
||||
cancel()
|
||||
}
|
||||
}()
|
||||
if socket != nil {
|
||||
console, err := socket.ReceiveMaster()
|
||||
if err != nil {
|
||||
|
||||
+8
-5
@@ -106,11 +106,8 @@ func New(id string, runtime *runsc.Runsc, stdio proc.Stdio) *Init {
|
||||
}
|
||||
|
||||
// Create the process with the provided config
|
||||
func (p *Init) Create(ctx context.Context, r *CreateConfig) error {
|
||||
var (
|
||||
err error
|
||||
socket *runc.Socket
|
||||
)
|
||||
func (p *Init) Create(ctx context.Context, r *CreateConfig) (err error) {
|
||||
var socket *runc.Socket
|
||||
if r.Terminal {
|
||||
if socket, err = runc.NewTempConsoleSocket(); err != nil {
|
||||
return errors.Wrap(err, "failed to create OCI runtime console socket")
|
||||
@@ -149,6 +146,12 @@ func (p *Init) Create(ctx context.Context, r *CreateConfig) error {
|
||||
p.closers = append(p.closers, sc)
|
||||
}
|
||||
var copyWaitGroup sync.WaitGroup
|
||||
ctx, cancel := context.WithTimeout(ctx, 30*time.Second)
|
||||
defer func() {
|
||||
if err != nil {
|
||||
cancel()
|
||||
}
|
||||
}()
|
||||
if socket != nil {
|
||||
console, err := socket.ReceiveMaster()
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user