From 7b4fc3960b5d989d626fe63fa2a07972a9acea7a Mon Sep 17 00:00:00 2001 From: tshalvi Date: Sun, 16 Jun 2024 18:05:29 +0300 Subject: [PATCH 1/2] Added a check to ensure that the media settings JSON is not loaded when the host CMIS management feature is disabled --- sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py b/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py index 9e79e6c7b..6a9c5f8ea 100644 --- a/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py +++ b/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py @@ -6,6 +6,7 @@ import os import ast +from sonic_platform.device_data import DeviceDataManager from sonic_py_common import device_info, logger from swsscommon import swsscommon from xcvrd import xcvrd @@ -22,6 +23,11 @@ def load_media_settings(): global g_dict + + if device_info.get_sonic_version_info()['asic_type'] == 'mellanox': + if not DeviceDataManager.is_module_host_management_mode(): + return {} + (platform_path, hwsku_path) = device_info.get_paths_to_platform_and_hwsku_dirs() # Support to fetch media_settings.json both from platform folder and HWSKU folder From 8b78eb9ee9224647d3aa9a926dd40592be96bbd3 Mon Sep 17 00:00:00 2001 From: tshalvi Date: Mon, 17 Jun 2024 12:20:53 +0300 Subject: [PATCH 2/2] Refactor: Moved import statement to the correct place for better code organization --- sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py b/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py index 6a9c5f8ea..665bdd61a 100644 --- a/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py +++ b/sonic-xcvrd/xcvrd/xcvrd_utilities/media_settings_parser.py @@ -6,7 +6,6 @@ import os import ast -from sonic_platform.device_data import DeviceDataManager from sonic_py_common import device_info, logger from swsscommon import swsscommon from xcvrd import xcvrd @@ -24,7 +23,9 @@ def load_media_settings(): global g_dict - if device_info.get_sonic_version_info()['asic_type'] == 'mellanox': + version_info = device_info.get_sonic_version_info() + if version_info and version_info['asic_type'] == 'mellanox': + from sonic_platform.device_data import DeviceDataManager if not DeviceDataManager.is_module_host_management_mode(): return {}