From 1998b5705992da7c1f46ec17c2a7d1d73b2ec76b Mon Sep 17 00:00:00 2001 From: Maisam Arif Date: Fri, 26 Jul 2024 10:46:28 -0500 Subject: [PATCH] [SWDEV-464799] Handle UnicodeEncodeError with non UTF-8 locales Signed-off-by: Maisam Arif Change-Id: Ifb8e6e3c7891c4f70faba5441fb87cc4ba2302f3 [ROCm/rocm_smi_lib commit: c2235eea35a5cb04acefeb9b0f10354bbadd9c5b] --- projects/rocm-smi-lib/python_smi_tools/rocm_smi.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/projects/rocm-smi-lib/python_smi_tools/rocm_smi.py b/projects/rocm-smi-lib/python_smi_tools/rocm_smi.py index 5dfad29731..e832ab1152 100755 --- a/projects/rocm-smi-lib/python_smi_tools/rocm_smi.py +++ b/projects/rocm-smi-lib/python_smi_tools/rocm_smi.py @@ -871,7 +871,13 @@ def printLog(device, metricName, value=None, extraSpace=False, useItalics=False) try: if extraSpace: print('\n', end='') - print(logstr + '\n', end='') + + # Handle non UTF-8 locale + try: + print(logstr + '\n', end='') + except UnicodeEncodeError: + print(logstr.encode('ascii', 'ignore').decode('ascii')) + sys.stdout.flush() # when piped into programs like 'head' - print throws an error. # silently ignore instead