Skip to content

After installing the SONiC image under ONIE on AS7326-56X/AS7726-56X, all ports cannot link up at the first boot of SONiC#3726

Merged
lguohan merged 1 commit intosonic-net:masterfrom
CharlieChenEC:as7x26_handle_mac_service_fix
Nov 9, 2019
Merged

After installing the SONiC image under ONIE on AS7326-56X/AS7726-56X, all ports cannot link up at the first boot of SONiC#3726
lguohan merged 1 commit intosonic-net:masterfrom
CharlieChenEC:as7x26_handle_mac_service_fix

Conversation

@CharlieChenEC
Copy link
Contributor

After installing the SONiC image under ONIE on AS7326-56X/AS7726-56X, all ports cannot link up at the first boot of SONiC

AS7326-56X and AS7726-56X use the same design so both devices have the same problem.
The detailed description below takes AS7326-56X as the example to explain.

Original implementation:

  • In platform/broadcom/sonic-platform-modules-accton/as7326-56x/service/as7326-platform-handle_mac.service,
    it executes the script file "accton_handle_idt.sh".
  • In "accton_handle_idt.sh", it modifies the content of the script file "/etc/init.d/opennsl-modules"
    to insert the lines to execute "idt_init.sh" before the command to load broadcom linux kernel module
    "linux-kernel-bde.ko".
  • The script "idt_init.sh" cannot be executed at the first boot of SONiC after
    installing SONiC under ONIE. This is the reason why all of the ports does not work.

New implementation:

  • Let "as7326-platform-handle_mac.service" execute "idt_init.sh".
  • Change the content of "as7326-platform-handle_mac.service" to define the service type as "oneshot".
    Add the settings to ensure "as7326-platform-handle_mac.service" is executed before "opennsl-modules.service".
    By setting the service type as "oneshot", it is guaranteed that "opennsl-modules.services" is started only when
    the forked process to execute the script file "idt_init.sh" is terminated

Signed-off-by: charlie_chen [email protected]

- What I did
Change the service defintion file "as7326-platform-handle_mac.service" and "as7726-32x-platform-handle_mac.service"
to execute "idt_init.sh" directly. The service type and the service dependency is also modified to ensure that
"opennsl-modules.services" is started after the execution of "idt_init.sh" is terminated.

- How I did it

- How to verify it
Install the modified SONiC image on AS7326-56X and AS7726-56X under ONIE.
Verify all of the ports can link up successfully at the first boot of SONiC after the ONIE installation procedure.

- Description for the changelog

Change the service defintion file "as7326-platform-handle_mac.service" and "as7726-32x-platform-handle_mac.service" to execute "idt_init.sh" directly.

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

… all ports cannot link up at the first boot of SONiC

AS7326-56X and AS7726-56X use the same design so both devices have the same problem.
The detailed description below takes AS7326-56X as the example to explain.

Original implementation:
- In platform/broadcom/sonic-platform-modules-accton/as7326-56x/service/as7326-platform-handle_mac.service,
  it executes the script file "accton_handle_idt.sh".
- In "accton_handle_idt.sh", it modifies the content of the script file "/etc/init.d/opennsl-modules"
  to insert the lines to execute "idt_init.sh" before the command to load broadcom linux kernel module
  "linux-kernel-bde.ko".
- The script "idt_init.sh" cannot be executed at the first boot of SONiC after
  installing SONiC under ONIE. This is the reason why all of the ports does not work.

New implementation:
- Let "as7326-platform-handle_mac.service" execute "idt_init.sh".
- Change the content of "as7326-platform-handle_mac.service" to define the service type as "oneshot".
  Add the settings to ensure "as7326-platform-handle_mac.service" is executed before "opennsl-modules.service".
  By setting the service type as "oneshot", it is guaranteed that "opennsl-modules.services" is started only when
  the forked process to execute the script file "idt_init.sh" is terminated

Signed-off-by: charlie_chen <[email protected]>
@msftclas
Copy link

msftclas commented Nov 8, 2019

CLA assistant check
All CLA requirements met.

@lguohan
Copy link
Collaborator

lguohan commented Nov 9, 2019

retest broadcom please

@lguohan lguohan merged commit 099f9b0 into sonic-net:master Nov 9, 2019
zhenggen-xu pushed a commit to zhenggen-xu/sonic-buildimage that referenced this pull request Jan 10, 2020
…AS7326-56X/AS7726-56X (sonic-net#3726)

AS7326-56X and AS7726-56X use the same design so both devices have the same problem.
The detailed description below takes AS7326-56X as the example to explain.

Original implementation:
- In platform/broadcom/sonic-platform-modules-accton/as7326-56x/service/as7326-platform-handle_mac.service,
  it executes the script file "accton_handle_idt.sh".
- In "accton_handle_idt.sh", it modifies the content of the script file "/etc/init.d/opennsl-modules"
  to insert the lines to execute "idt_init.sh" before the command to load broadcom linux kernel module "linux-kernel-bde.ko".
- The script "idt_init.sh" cannot be executed at the first boot of SONiC after installing SONiC under ONIE. This is the reason why all of the ports does not work.

New implementation:
- Let "as7326-platform-handle_mac.service" execute "idt_init.sh".
- Change the content of "as7326-platform-handle_mac.service" to define the service type as "oneshot". Add the settings to ensure "as7326-platform-handle_mac.service" is executed before "opennsl-modules.service".
  By setting the service type as "oneshot", it is guaranteed that "opennsl-modules.services" is started only when the forked process to execute the script file "idt_init.sh" is terminated

Signed-off-by: charlie_chen <[email protected]>
mssonicbld added a commit that referenced this pull request Jul 16, 2025
…lly (#23068)

#### Why I did it
src/sonic-swss
```
* 9d74a49 - (HEAD -> master, origin/master, origin/HEAD) [orchagent] CoPP neighbor miss trap and enhancements (#3624) (8 hours ago) [Ravi Minnikanti(Marvell)]
* 41dc0cb - Improve route performance 20% by changing NextHopGroupTable from std::map to std::unordered_map. (#3742) (8 hours ago) [Hua Liu]
* 27391fc - Publish oper_status time to STATE_DB (#3756) (29 hours ago) [Bobby McGonigle]
* ad80fa5 - [trim]: Add Packet Trimming Asym DSCP to OA (#3705) (29 hours ago) [Nazarii Hnydyn]
* dc520a7 - [ssw][ha] fix dpu_state_db connection issue and zmq not supporting dpu_appl_db (31 hours ago) [Jing Zhang]
* 035e1c7 - Added MAX pre-FEC BER for link health monitoring (#3757) (33 hours ago) [Prince George]
* 0c5a6e4 - Skip ref counting standby mux neighbor NHs when added to NH group (#3753) (33 hours ago) [manamand2020]
* f53cc8c - [DASH] Implement PL Redirect Map (#3731) (35 hours ago) [Lawrence Lee]
* c5c360e - Fix counter issue #22775 and #22478 (#3681) (4 days ago) [Stephen Sun]
* bd73705 - [DASH] Support trusted VNIs for appliance and ENI objects (#3728) (4 days ago) [Lawrence Lee]
* cea81b2 - stpd crashes due to wrong no.of stp instance passed from stpmgrd (#3752) (5 days ago) [Divya Kumaran Chandralekha]
* af56a61 - Fix fpmsyncd crash during pfcwd/test_pfcwd_warm_reboot.py worm reboot issue (#3746) (5 days ago) [Hua Liu]
* 80932db - use the exact strings from hld (#3735) (13 days ago) [Jing Zhang]
* f44f6ab - [vs][mirror]: Update test to use the max TC number provided by VS lib (#3712) (2 weeks ago) [Nazarii Hnydyn]
* 55e9bba - remove the logic that skip system neigh task for ASICs that share common hostname (#3718) (2 weeks ago) [Changrong Wu]
* 3356753 - LC buffer errors for local port (#3719) (2 weeks ago) [Vineet Mittal]
* bad2141 - Update INIT_VIEW timeout for marvell-prestera platforms (#3729) (2 weeks ago) [Pavan Prakash]
* eebaf97 - [routeorch] Wait for the VRF to be created (#3652) (2 weeks ago) [Manoharan Sundaramoorthy]
* 7dd3be9 - [fpmsyncd]Fixing the blackhole route removal during warmboot (#3726) (2 weeks ago) [Sudharsan Dhamal Gopalarathnam]
* 575c342 - [routeorch] Handle SAI_STATUS_ITEM_NOT_FOUND when setting route entries (#3713) (3 weeks ago) [Nikola Dancejic]
* 1ae6787 - [portsorch] postpone non-critical port init part in warm/fast-reboot (#3562) (3 weeks ago) [Stepan Blyshchak]
* 889aff6 - add support for local endpoints in vnet_route_tunnel (#3651) (3 weeks ago) [Jing Zhang]
* 1f97afb - [trim]: Add Packet Trimming to OA (#3594) (3 weeks ago) [Nazarii Hnydyn]
* 8c2b337 - Gracefully handle errors when accessing dpu app_state DB on NPU from DPU (#3716) (3 weeks ago) [prabhataravind]
* a0e1953 - Harden module build script by specifying the source version to get (#3723) (3 weeks ago) [Saikrishna Arcot]
* 0081e3a - Improve route orch performance by enable ZMQ (#3632) (3 weeks ago) [Hua Liu]
```
#### How I did it
#### How to verify it
#### Description for the changelog
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants