From 10389ae450bd24d81b31d4b917ce0eb3067fc355 Mon Sep 17 00:00:00 2001 From: Bindhiya Kanangot Balakrishnan Date: Thu, 24 Jul 2025 10:30:22 -0500 Subject: [PATCH] [SWDEV-537852] Update help text for InvalidParameterValueException Updated the help text to display command name. Signed-off-by: Bindhiya Kanangot Balakrishnan [ROCm/amdsmi commit: 449839a32e9bccf1b21304ab45a6a89a8b7681f8] --- .../amdsmi_cli/amdsmi_cli_exceptions.py | 5 ++-- projects/amdsmi/amdsmi_cli/amdsmi_parser.py | 28 +++++++++---------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/projects/amdsmi/amdsmi_cli/amdsmi_cli_exceptions.py b/projects/amdsmi/amdsmi_cli/amdsmi_cli_exceptions.py index 6c722b615f..27dd3aecc3 100644 --- a/projects/amdsmi/amdsmi_cli/amdsmi_cli_exceptions.py +++ b/projects/amdsmi/amdsmi_cli/amdsmi_cli_exceptions.py @@ -174,13 +174,14 @@ class AmdSmiInvalidFilePathException(AmdSmiException): class AmdSmiInvalidParameterValueException(AmdSmiException): - def __init__(self, command, outputformat: str): + def __init__(self, command, arg, outputformat: str): super().__init__() self.value = -5 self.command = command + self.arg = arg self.output_format = outputformat - common_message = f"Value '{self.command}' is not of valid type or format. Run 'amd-smi -h' for more info." + common_message = f"Value '{self.arg}' is not of valid type or format. Run 'amd-smi {self.command} -h' for more info." self.json_message["error"] = common_message self.json_message["code"] = self.value diff --git a/projects/amdsmi/amdsmi_cli/amdsmi_parser.py b/projects/amdsmi/amdsmi_cli/amdsmi_parser.py index 7014cecec8..d1bf84d622 100644 --- a/projects/amdsmi/amdsmi_cli/amdsmi_parser.py +++ b/projects/amdsmi/amdsmi_cli/amdsmi_parser.py @@ -186,7 +186,7 @@ class AMDSMIParser(argparse.ArgumentParser): if int_value == "": raise amdsmi_cli_exceptions.AmdSmiMissingParameterValueException(sub_arg, outputformat) else: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(int_value, outputformat) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], int_value, outputformat) def _positive_int(self, int_value, sub_arg=None): @@ -199,7 +199,7 @@ class AMDSMIParser(argparse.ArgumentParser): if int_value == "": raise amdsmi_cli_exceptions.AmdSmiMissingParameterValueException(sub_arg, outputformat) else: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(int_value, outputformat) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], int_value, outputformat) def _is_valid_string(self, string_value, sub_arg=None): @@ -212,7 +212,7 @@ class AMDSMIParser(argparse.ArgumentParser): if string_value == "": raise amdsmi_cli_exceptions.AmdSmiMissingParameterValueException(sub_arg, outputformat) else: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(string_value, outputformat) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], string_value, outputformat) def _is_command_supported(self, user_input, acceptable_values, command_name): @@ -220,7 +220,7 @@ class AMDSMIParser(argparse.ArgumentParser): raise amdsmi_cli_exceptions.AmdSmiCommandNotSupportedException(command_name, self.helpers.get_output_format()) elif str(user_input).upper() not in acceptable_values: print(f"Valid inputs are {acceptable_values}") - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(str(user_input).upper(), self.helpers.get_output_format()) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], str(user_input).upper(), self.helpers.get_output_format()) else: return str(user_input).upper() @@ -245,10 +245,10 @@ class AMDSMIParser(argparse.ArgumentParser): # Check if the val is a valid integer value if not val.isdigit(): - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(val, output_format) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], val, output_format) val = int(val) if val < 0: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(val, output_format) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], val, output_format) clk_limit_args = collections.namedtuple('clk_limit_args', ['clk_type', 'lim_type', 'val']) setattr(namespace, self.dest, clk_limit_args(clk_type, lim_type, val)) return AMDSMILimitArgs @@ -274,10 +274,10 @@ class AMDSMIParser(argparse.ArgumentParser): # Check if every item in perf level is valid for level in perf_levels_str: if not level.isdigit(): - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(level, output_format) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], level, output_format) level = int(level) if level < 0: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(level, output_format) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], level, output_format) perf_levels.append(level) clk_level_args = collections.namedtuple('clk_level_args', ['clk_type', 'perf_levels']) @@ -406,7 +406,7 @@ class AMDSMIParser(argparse.ArgumentParser): if selected_device_handles == '': raise amdsmi_cli_exceptions.AmdSmiMissingParameterValueException("--gpu", _GPUSelectAction.outputformat) elif not gpu_format: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(selected_device_handles, + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], selected_device_handles, _GPUSelectAction.outputformat) else: raise amdsmi_cli_exceptions.AmdSmiDeviceNotFoundException(selected_device_handles, @@ -436,7 +436,7 @@ class AMDSMIParser(argparse.ArgumentParser): if selected_device_handles == '': raise amdsmi_cli_exceptions.AmdSmiMissingParameterValueException("--cpu", _CPUSelectAction.outputformat) elif not cpu_format: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(selected_device_handles, + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], selected_device_handles, _CPUSelectAction.outputformat) else: raise amdsmi_cli_exceptions.AmdSmiDeviceNotFoundException(selected_device_handles, @@ -465,7 +465,7 @@ class AMDSMIParser(argparse.ArgumentParser): if selected_device_handles == '': raise amdsmi_cli_exceptions.AmdSmiMissingParameterValueException("--core", _CoreSelectAction.outputformat) elif not core_format: - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(selected_device_handles, + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], selected_device_handles, _CoreSelectAction.outputformat) else: raise amdsmi_cli_exceptions.AmdSmiDeviceNotFoundException(selected_device_handles, @@ -499,15 +499,15 @@ class AMDSMIParser(argparse.ArgumentParser): if value.isdigit(): if int(value) < 0: outputformat = self.helpers.get_output_format() - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(value, outputformat) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], value, outputformat) else: outputformat = self.helpers.get_output_format() - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(value, outputformat) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], value, outputformat) if isinstance(value, int): if int(value) < 0: outputformat = self.helpers.get_output_format() - raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(value, outputformat) + raise amdsmi_cli_exceptions.AmdSmiInvalidParameterValueException(sys.argv[1], value, outputformat) return value