sonic-buildimage/platform/mellanox/mlnx-platform-api/sonic_platform
Stephen Sun b3a283366c
Fix issue: exception occurred during chassis object being destroyed (#7446)
The following error message is observed during chassis object being destroyed

"Exception ignored in: <function Chassis.__del__ at 0x7fd22165cd08>
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/sonic_platform/chassis.py", line 83, in __del__
ImportError: sys.meta_path is None, Python is likely shutting down
The chassis tries to import deinitialize_sdk_handle during being destroyed for the purpose of releasing the sdk_handle.
However, importing another module during shutting down can cause the error because some of the fundamental infrastructures are no longer available."

This error occurs when a chassis object is created and then destroyed in the Python shell.

- How I did it
To fix it, record the deinitialize_sdk_handle in the chassis object when sdk_handle is being initialized and call the deinitialize handler when the chassis object is being destroyed

- How to verify it
Manually test.
2021-04-29 11:33:39 +03:00
..
__init__.py Add thermal control support for SONiC (#3949) 2020-03-09 10:41:10 -07:00
chassis.py Fix issue: exception occurred during chassis object being destroyed (#7446) 2021-04-29 11:33:39 +03:00
component.py [Mellanox] Ensure concrete platform API classes call base class initializer (#6854) 2021-02-25 11:06:22 -08:00
device_data.py [Mellanox] Add support for SN4600 system (#6879) 2021-02-25 09:30:43 +02:00
eeprom.py [mellanox][platform api] fix a missing import time module (#6458) 2021-01-15 08:01:11 -08:00
fan_drawer.py [Mellanox] Implement new platform API for SONiC physical entity mib extension (#5645) 2020-11-16 18:56:03 -08:00
fan.py [Mellanox] Add python3 support for Mellanox platform API (#6175) 2020-12-11 10:51:31 -08:00
led.py Fix issue: should not initialize led color in __init__ file as platform API will be called by multiple daemons (#7114) 2021-03-25 14:28:33 +02:00
platform.py [Mellanox] Initialize PSU API on both host and docker side (#7016) 2021-03-15 12:43:18 -07:00
psu.py [Mellanox] Add support for SN4600 system (#6879) 2021-02-25 09:30:43 +02:00
sfp_event.py [Mellanox] [platform API] Fix “local variable 'label_port' referenced before assignment” error (#6419) 2021-01-12 10:43:57 -08:00
sfp.py [Mellanox] Fixes issue: CLI sfputil does not work based on sonic platform API (#7018) 2021-03-11 18:54:33 -08:00
thermal_actions.py [Mellanox] Never disable kernel thermal algorithm at real-time (#4638) 2020-05-26 10:46:29 -07:00
thermal_conditions.py Fix dynamic minimum fan table issue caused by python3 (#6690) 2021-02-07 11:21:44 +02:00
thermal_infos.py [Mellanox] thermal control enhancement for dynamic minimum fan speed and PSU fan speed policy (#4403) 2020-04-21 08:09:53 -07:00
thermal_manager.py [Mellanox] thermal control enhancement for dynamic minimum fan speed and PSU fan speed policy (#4403) 2020-04-21 08:09:53 -07:00
thermal.py [Mellanox] Ensure concrete platform API classes call base class initializer (#6854) 2021-02-25 11:06:22 -08:00
utils.py [Mellanox] Fixes issue: CLI sfputil does not work based on sonic platform API (#7018) 2021-03-11 18:54:33 -08:00
watchdog.py [Mellanox] Ensure concrete platform API classes call base class initializer (#6854) 2021-02-25 11:06:22 -08:00