From 36d8c7e8317886299b19786b729b8a86837cd2eb Mon Sep 17 00:00:00 2001 From: Diptanu Choudhury Date: Sat, 2 Apr 2016 01:51:17 -0700 Subject: [PATCH] Setting the cg path after application of pid --- Godeps/Godeps.json | 4 ++++ client/driver/executor/executor.go | 3 +-- client/driver/executor/executor_linux.go | 5 ++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index 72a5a4eb9..476bfccd4 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -7,6 +7,10 @@ "ImportPath": "github.com/StackExchange/wmi", "Rev": "f3e2bae1e0cb5aef83e319133eabfee30013a4a5" }, + { + "ImportPath": "github.com/Sirupsen/logrus", + "Rev": "4b6ea7319e214d98c938f12692336f7ca9348d6b" + }, { "ImportPath": "github.com/armon/circbuf", "Rev": "bbbad097214e2918d8543d5201d12bfd7bca254d" diff --git a/client/driver/executor/executor.go b/client/driver/executor/executor.go index 282d34232..9663919ff 100644 --- a/client/driver/executor/executor.go +++ b/client/driver/executor/executor.go @@ -375,8 +375,7 @@ func (e *UniversalExecutor) Exit() error { } if e.command != nil && e.command.ResourceLimits { e.cgLock.Lock() - err := DestroyCgroup(e.groups, e.cgPaths) - if err != nil { + if err := DestroyCgroup(e.groups, e.cgPaths); err != nil { merr.Errors = append(merr.Errors, err) } e.cgLock.Unlock() diff --git a/client/driver/executor/executor_linux.go b/client/driver/executor/executor_linux.go index 25fb7e1e4..68fb3891d 100644 --- a/client/driver/executor/executor_linux.go +++ b/client/driver/executor/executor_linux.go @@ -65,12 +65,15 @@ func (e *UniversalExecutor) applyLimits(pid int) error { return err } e.cgPaths = manager.GetPaths() - cgConfig := cgroupConfig.Config{Cgroup: e.groups} + cgConfig := cgroupConfig.Config{Cgroups: e.groups} if err := manager.Set(&cgConfig); err != nil { e.logger.Printf("[ERR] executor: error setting cgroup config: %v", err) if er := DestroyCgroup(e.groups, e.cgPaths); er != nil { e.logger.Printf("[ERR] executor: error destroying cgroup: %v", er) } + if er := e.removeChrootMounts(); er != nil { + e.logger.Printf("[ERR] executor: error removing chroot: %v", er) + } return err } return nil