From 5b5bc77bb73f2d38744055d319bf15962516fd4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franti=C5=A1ek=20=C5=98ezn=C3=AD=C4=8Dek?= <246254@mail.muni.cz> Date: Tue, 7 Jun 2022 18:13:36 +0200 Subject: [PATCH] fix: gpumon GPU_DEVICES_UNRECOGNIZED detection crash --- CHANGELOG.md | 4 ++++ src/metric-generators/gpumon.sh | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c9c884a..3ab96fb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.2.4] - 2022-06-07 +### Added +- gpumon: GPU_DEVICES_UNRECOGNIZED detection reworked without grep, with gawk, avoiding crash + ## [1.2.3] - 2022-06-07 ### Added - gpumon: publish at least a metric help (metric-generator-exec requirement) diff --git a/src/metric-generators/gpumon.sh b/src/metric-generators/gpumon.sh index 2cfffae..1c37b76 100755 --- a/src/metric-generators/gpumon.sh +++ b/src/metric-generators/gpumon.sh @@ -47,8 +47,8 @@ function find_gpu_passthough_vm_manifest () { # gather all GPU cards (assure device model name is detected) STAGE_NAME="GPU cards successfully detected" GPU_DEVICES="$(get_gpu_devices)" -GPU_DEVICES_UNRECOGNIZED="$(echo "${GPU_DEVICES}" | gawk 'BEGIN{FPAT = "(\"[^\"]+\")"}{print $3}' | \ - sort -u | tr -d '"' | grep -Ev '.+[ \t]\[.+\]')" +GPU_DEVICES_UNRECOGNIZED="$(echo "${GPU_DEVICES}" | \ + gawk 'BEGIN{FPAT = "(\"[^\"]+\")"}{if (!($3 ~ /.+[ \t]\[.+\]/)) {print $3}}')" if [ -n "${GPU_DEVICES_UNRECOGNIZED}" ]; then # reload GPU devices and resolve proper device names with internet PCI id database GPU_DEVICES="$(get_gpu_devices -q)" -- GitLab