diff options
author | Arne Juul <arnej@yahooinc.com> | 2022-10-24 13:05:36 +0000 |
---|---|---|
committer | Arne Juul <arnej@yahooinc.com> | 2022-10-24 13:06:21 +0000 |
commit | 769549a2710faf032e156b14d391351e63433d8a (patch) | |
tree | 5b024692b4e021e2a42ecf32e4eb845d609260fd | |
parent | c057ce5898ed3d4e443b438dbec5d23c2a97a3b2 (diff) |
move SetResourceLimit to util
-rw-r--r-- | client/go/script-utils/startcbinary/tuning.go | 6 | ||||
-rw-r--r-- | client/go/util/setrlimit.go (renamed from client/go/script-utils/startcbinary/setrlimit.go) | 10 | ||||
-rw-r--r-- | client/go/util/setrlimit_windows.go (renamed from client/go/script-utils/startcbinary/setrlimit_windows.go) | 4 |
3 files changed, 12 insertions, 8 deletions
diff --git a/client/go/script-utils/startcbinary/tuning.go b/client/go/script-utils/startcbinary/tuning.go index 80fec7cc6c2..dbe4d34dabe 100644 --- a/client/go/script-utils/startcbinary/tuning.go +++ b/client/go/script-utils/startcbinary/tuning.go @@ -44,7 +44,7 @@ func getThpSizeMb() int { func (spec *ProgSpec) configureTuning() { spec.optionallyReduceBaseFrequency() - setResourceLimit(RLIMIT_CORE, NO_RLIMIT) - setResourceLimit(RLIMIT_NOFILE, 262144) - setResourceLimit(RLIMIT_NPROC, 409600) + util.SetResourceLimit(util.RLIMIT_CORE, util.NO_RLIMIT) + util.SetResourceLimit(util.RLIMIT_NOFILE, 262144) + util.SetResourceLimit(util.RLIMIT_NPROC, 409600) } diff --git a/client/go/script-utils/startcbinary/setrlimit.go b/client/go/util/setrlimit.go index 5d7f33d5a0e..4ec1ea60a3c 100644 --- a/client/go/script-utils/startcbinary/setrlimit.go +++ b/client/go/util/setrlimit.go @@ -2,7 +2,7 @@ //go:build !windows -package startcbinary +package util import ( "github.com/vespa-engine/vespa/client/go/trace" @@ -31,7 +31,7 @@ func (rid ResourceId) String() string { return "unknown resource id" } -func setResourceLimit(resource ResourceId, newVal uint64) { +func SetResourceLimit(resource ResourceId, newVal uint64) { var current unix.Rlimit err := unix.Getrlimit(int(resource), ¤t) if err != nil { @@ -42,7 +42,11 @@ func setResourceLimit(resource ResourceId, newVal uint64) { if current.Max < newVal { if os.Getuid() == 0 { wanted.Max = newVal - } else { + } else if newVal > current.Max { + trace.Warning( + "Wanted", newVal, + "as limit for", resource.String(), + "but cannot exceed current hard limit:", current.Max) newVal = current.Max } } diff --git a/client/go/script-utils/startcbinary/setrlimit_windows.go b/client/go/util/setrlimit_windows.go index 5bed1916246..c40b1cb1364 100644 --- a/client/go/script-utils/startcbinary/setrlimit_windows.go +++ b/client/go/util/setrlimit_windows.go @@ -2,7 +2,7 @@ //go:build windows -package startcbinary +package util type ResourceId int @@ -13,6 +13,6 @@ const ( NO_RLIMIT uint64 = ^uint64(0) ) -func setResourceLimit(resource ResourceId, max uint64) { +func SetResourceLimit(resource ResourceId, max uint64) { // nop } |