diff options
Diffstat (limited to 'runsc/boot/loader.go')
-rw-r--r-- | runsc/boot/loader.go | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/runsc/boot/loader.go b/runsc/boot/loader.go index af577f571..34a25241f 100644 --- a/runsc/boot/loader.go +++ b/runsc/boot/loader.go @@ -287,7 +287,15 @@ func createPlatform(conf *Config) (platform.Platform, error) { func (l *Loader) Run() error { err := l.run() l.ctrl.app.startResultChan <- err - return err + if err != nil { + // Give the controller some time to send the error to the + // runtime. If we return too quickly here the process will exit + // and the control connection will be closed before the error + // is returned. + gtime.Sleep(2 * gtime.Second) + return err + } + return nil } func (l *Loader) run() error { |