Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Warm and fast reboot process throws error - "RuntimeError: Eeprom is not Programmed" #5118

Closed
vaibhavhd opened this issue Aug 6, 2020 · 2 comments · Fixed by sonic-net/sonic-utilities#1037

Comments

@vaibhavhd
Copy link
Contributor

Description

Steps to reproduce the issue

  1. Installed latest master broadcom image from public repo. At the time of issue, the image used was - https://sonic-jenkins.westus2.cloudapp.azure.com/job/broadcom/job/buildimage-brcm-all/373/artifact/target/sonic-broadcom.bin
  2. Issue warm/fast reboot on the device.
  3. The error will be thrown before the device actually performs reboot (warm/fast).

Describe the results you received

$ sudo warm-reboot 
Warning: 'sonic_installer' command is deprecated and will be removed in the future
Please use 'sonic-installer' instead
Warning: Stopping telemetry.service, but it can still be activated by:
  telemetry.timer
Traceback (most recent call last):
  File "/usr/bin/watchdogutil", line 12, in <module>
    sys.exit(watchdogutil())
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 1134, in invoke
    Command.invoke(self, ctx)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python2.7/dist-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/watchdogutil/main.py", line 92, in watchdogutil
    err = load_platform_watchdog()
  File "/usr/lib/python2.7/dist-packages/watchdogutil/main.py", line 64, in load_platform_watchdog
    platform = sonic_platform.platform.Platform()
  File "/usr/local/lib/python2.7/dist-packages/sonic_platform/platform.py", line 25, in __init__
    self._chassis = Chassis()
  File "/usr/local/lib/python2.7/dist-packages/sonic_platform/chassis.py", line 62, in __init__
    self._eeprom = Eeprom()
  File "/usr/local/lib/python2.7/dist-packages/sonic_platform/eeprom.py", line 42, in __init__
    raise RuntimeError("Eeprom is not Programmed")
RuntimeError: Eeprom is not Programmed

Describe the results you expected
No errors should be seen during reboot.

Additional information you deem important (e.g. issue happens only occasionally)

Output of show version

SONiC Software Version: SONiC.master.373-0a409ff6
Distribution: Debian 10.5
Kernel: 4.19.0-9-2-amd64
Build commit: 0a409ff6
Build date: Wed Aug  5 16:30:59 UTC 2020
Built by: johnar@jenkins-worker-11
@jleveque
Copy link
Contributor

jleveque commented Aug 6, 2020

This appears to be caused by this PR: #4330

The line /usr/local/bin/s6100_i2c_enumeration.sh deinit & > /dev/null was added to the fast-reboot/warm-reboot plugin. However, the fast-reboot/warm-reboot calls watchdogutil arm AFTER the i2c bus has been de-init'ed, therefore causing the platform API to fail to communicate with the watchdog.

@padmanarayana, @aravindmani-1: Please fix.

@jleveque jleveque transferred this issue from sonic-net/sonic-utilities Aug 6, 2020
@sujinmkang
Copy link
Collaborator

fix : sonic-net/sonic-utilities#1037

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants