sonic-buildimage/platform/mellanox/mlnx-platform-api/tests
Sudharsan Dhamal Gopalarathnam 23d68883f5
[Mellanox]Check dmi file permission before access (#11309)
Signed-off-by: Sudharsan Dhamal Gopalarathnam sudharsand@nvidia.com

Why I did it
During the system boot up when 'show platform status' or 'show version' command is executed before STATE_DB CHASSIS_INFO table is populated, the show will try to fallback to use the platform API. The DMI file in mellanox platforms require root permission for access. So if the show commands are executed as admin or any other user, the following error log will appear in the syslog

Jun 28 17:21:25.612123 sonic ERR show: Fail to decode DMI /sys/firmware/dmi/entries/2-0/raw due to PermissionError(13, 'Permission denied')

How I did it
Check the file permission before accessing it.

How to verify it
Added UT to verify. Manually verified if the error log is not thrown.
2022-07-01 17:29:07 -07:00
..
input_platform [Mellanox] Credo Y-cable read_eeprom/write_eeprom API implementation (#10320) 2022-03-30 20:41:31 +03:00
__init__.py [Mellanox] Add NVIDIA Copyright header to "mellanox" files (#8799) 2021-10-17 19:03:02 +03:00
conftest.py [Mellanox] Update NVIDIA License header for files changed since 1.1.2022 (#10289) 2022-03-23 13:19:25 +02:00
duplicate_action.json [Mellanox] Fix thermal control bugs (#4298) 2020-03-25 10:54:07 -07:00
duplicate_condition.json [Mellanox] Fix thermal control bugs (#4298) 2020-03-25 10:54:07 -07:00
empty_action.json [Mellanox] Fix thermal control bugs (#4298) 2020-03-25 10:54:07 -07:00
empty_condition.json [Mellanox] Fix thermal control bugs (#4298) 2020-03-25 10:54:07 -07:00
mock_eeprom_data [Mellanox] Refactor Mellanox platform API to support dynamic port configuration (#8422) 2021-10-25 07:59:06 +03:00
mock_platform.py [Mellanox] Add NVIDIA Copyright header to "mellanox" files (#8799) 2021-10-17 19:03:02 +03:00
mock_psu_vpd [Mellanox] Refactor Mellanox platform API to support dynamic port configuration (#8422) 2021-10-25 07:59:06 +03:00
policy_with_same_conditions.json [Mellanox] Optimize thermal control policies (#9452) 2022-01-19 11:44:37 +02:00
test_chassis.py [Mellanox]Check dmi file permission before access (#11309) 2022-07-01 17:29:07 -07:00
test_cpu_thermal_control.py [Mellanox] Add CPU thermal control for Nvidia platforms (#10202) 2022-03-21 09:54:52 -07:00
test_eeprom.py [Mellanox] Enhance Platform API to support SN2201 - RJ45 ports and new components mgmt. (#10377) 2022-06-20 19:12:20 -07:00
test_fan_api.py [Mellanox] Update NVIDIA License header for files changed since 1.1.2022 (#10289) 2022-03-23 13:19:25 +02:00
test_firmware.py [Mellanox] Update NVIDIA License header for files changed since 1.1.2022 (#10289) 2022-03-23 13:19:25 +02:00
test_led.py [Mellanox] Enhance Platform API to support SN2201 - RJ45 ports and new components mgmt. (#10377) 2022-06-20 19:12:20 -07:00
test_module.py [Mellanox] Enhance Platform API to support SN2201 - RJ45 ports and new components mgmt. (#10377) 2022-06-20 19:12:20 -07:00
test_psu.py [Mellanox] Adjust PSU voltage WA (#10619) 2022-04-22 11:02:30 +03:00
test_sfp_event.py [Mellanox] Refactor Mellanox platform API to support dynamic port configuration (#8422) 2021-10-25 07:59:06 +03:00
test_sfp.py [Mellanox] Enhance Platform API to support SN2201 - RJ45 ports and new components mgmt. (#10377) 2022-06-20 19:12:20 -07:00
test_thermal_policy.py [Mellanox] Update NVIDIA License header for files changed since 1.1.2022 (#10289) 2022-03-23 13:19:25 +02:00
test_thermal.py [Mellanox] Enhance Platform API to support SN2201 - RJ45 ports and new components mgmt. (#10377) 2022-06-20 19:12:20 -07:00
test_utils.py [Mellanox] Auto correct PSU voltage threshold (WA) (#10394) 2022-04-14 08:14:40 +03:00
thermal_policy.json [Mellanox] Optimize thermal control policies (#9452) 2022-01-19 11:44:37 +02:00