summaryrefslogtreecommitdiffstats
path: root/container-disc/src/main/sh/vespa-start-container-daemon.sh
diff options
context:
space:
mode:
authorValerij Fredriksen <freva@users.noreply.github.com>2021-10-29 11:14:50 +0200
committerGitHub <noreply@github.com>2021-10-29 11:14:50 +0200
commit1299868a881e1a3ba06625c0ec5b2726ed26276b (patch)
tree131411e06c4e7d44da89620a3b384e72fb597d5b /container-disc/src/main/sh/vespa-start-container-daemon.sh
parentbbc57028ea8db2e570d7946b52be163c209d059b (diff)
parent15e3cf6b9096b6c2c14fdaffc69f013e627680b8 (diff)
Merge pull request #19786 from vespa-engine/hakonhall/get-minimum-value-from-cgroups-v2-hierarchy
Get minimum value from cgroups v2 hierarchy
Diffstat (limited to 'container-disc/src/main/sh/vespa-start-container-daemon.sh')
-rwxr-xr-xcontainer-disc/src/main/sh/vespa-start-container-daemon.sh25
1 files changed, 18 insertions, 7 deletions
diff --git a/container-disc/src/main/sh/vespa-start-container-daemon.sh b/container-disc/src/main/sh/vespa-start-container-daemon.sh
index ec3366a62d7..da7e270890d 100755
--- a/container-disc/src/main/sh/vespa-start-container-daemon.sh
+++ b/container-disc/src/main/sh/vespa-start-container-daemon.sh
@@ -90,19 +90,30 @@ vespa_cg2get() {
local leaf_dir="$root_dir$slice"
local current_dir="$leaf_dir"
- while true; do
+ local min_value=
+ while (( ${#current_dir} >= ${#root_dir} )); do
local path="$current_dir"/"$filename"
if [ -r "$path" ]; then
- cat "$path"
- return 0
+ local value=$(< "$path")
+ if [ -z "$min_value" ]; then
+ min_value="$value"
+ elif [ "$min_value" == max ]; then
+ min_value="$value"
+ elif [ "$value" != max ] && (( value < min_value )); then
+ min_value="$value"
+ fi
fi
current_dir="${current_dir%/*}"
- if (( ${#current_dir} < ${#root_dir} )); then
- echo "No such filename was found at $leaf_dir: $filename" >&2
- return 1
- fi
done
+
+ if [ -z "$min_value" ]; then
+ echo "No such filename was found at $leaf_dir: $filename" >&2
+ return 1
+ fi
+
+ echo "$min_value"
+ return 0
}
configure_memory() {