Skip to content

[Mellanox] do not use system clock to avoid issues caused by system time change#21446

Merged
liat-grozovik merged 1 commit intosonic-net:masterfrom
Junchao-Mellanox:master-time-fix
Jan 21, 2025
Merged

[Mellanox] do not use system clock to avoid issues caused by system time change#21446
liat-grozovik merged 1 commit intosonic-net:masterfrom
Junchao-Mellanox:master-time-fix

Conversation

@Junchao-Mellanox
Copy link
Collaborator

Why I did it

Mellanox platform API uses standard python time function time.time() in many places. time.time() gets time from system clock which could be changed by NTP or user. Adjusting system clock will affect the code logical and causes bugs. For example, in platform/mellanox/mlnx-platform-api/sonic_platform/utils.py there is a Timer class, the timer will trigger event with unexpected interval if user/NTP changes the system clock. This PR changes time.time() to time.monotonic to avoid such issue.

Work item tracking
  • Microsoft ADO (number only):

How I did it

Use time.monotonic() instead of time.time .

How to verify it

Manual test.
Unit test.

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111
  • 202205
  • 202211
  • 202305

Tested branch (Please provide the tested image version)

Description for the changelog

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

@mssonicbld
Copy link
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202411: #21503

stepanblyschak pushed a commit to stepanblyschak/sonic-buildimage that referenced this pull request Jan 27, 2025
dgsudharsan pushed a commit to dgsudharsan/sonic-buildimage that referenced this pull request Jan 29, 2025
dgsudharsan pushed a commit to dgsudharsan/sonic-buildimage that referenced this pull request Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants