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

Test submit OTSS and Syncd-ot code #8

Closed

Conversation

sonic-otn
Copy link
Owner

Why I did it

Work item tracking
  • Microsoft ADO (number only):

How I did it

How to verify it

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)

Makefile Outdated
@@ -29,8 +29,9 @@ ifeq ($(NOBULLSEYE),0)
BUILD_BULLSEYE=1
endif

PLATFORM_PATH := platform/$(if $(PLATFORM),$(PLATFORM),$(CONFIGURED_PLATFORM))
PLATFORM_CHECKOUT := platform/checkout
PLATFORM_ROOT := $(if $(shell echo $(PLATFORM) | grep 'ot-'),ot-platform,platform)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

grep 'ot-' will pick up all the platform name include the substring "ot-", such as "slot-", "hot-"

Makefile Outdated
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all platforms (total 9) in sonic are under 'platform' directory. ot-platform folder diverges from existing directory structure? I don't see any technical reason for that.

Makefile.work Outdated
@@ -136,7 +136,13 @@ endif
rules/config.user:
$(Q)echo -n ""

#include different configurations based on target platform
ifneq ($(shell echo $(CONFIGURED_PLATFORM) | grep 'ot-'),)
include rules/config-ot
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rule/config is meant for each vendor to edit to fit their device features. We can always add more nobs, No need to introduce a new file config-ot. I don't see rules/config-ot file in this PR.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is generated file, should not be checked in.

$(LIBOTAIVS_DBG)

$(DOCKER_SYNCD_BASE)_VERSION = 1.0.0
$(DOCKER_SYNCD_BASE)_PACKAGE_NAME = syncd-ot-vs
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

docker package name should not include platform name, as all platforms should have the same syncd-ot as image/package name. as in existing sonic, all platform has docker "syncd".

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should not check in buildinfo.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this working in the demo? this is to generate a kvm image bounded with onie image. so you can start kvm sonic in one step. But I saw that ALi demo, still two steps: 1) start onie 2) install sonic-ot-vs.

SONIC_KVM_IMAGE = sonic-ot-vs.img.gz
$(SONIC_KVM_IMAGE)_INSTALLS += $(SYSTEMD_SONIC_GENERATOR) \
$(KVM_4_SLOT_FACTORY_CONFIG)
$(SONIC_KVM_IMAGE)_MACHINE = ot-vs
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

change name to ot-kvm, you need build an new onie. because we use existing onie for vs, so the kvm image has to be ended with "vs"

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ONIE should be build by each device vendor to preinstall on their product.

In our case a new onie should be build for ot-kvm, see https://github.com/jjin62/onie/tree/2018.11br. you can compile it or just use the iso. (https://github.com/jjin62/onie/tree/2018.11br/build/images) ONIE for Molex device (based on x86): https://github.com/jjin62/onie/tree/2022.08br.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

files in template directory are duplicated from /platform/template. Can we make a soft link to original directory?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is for Mininet topology. remove?

rules/config-ot Outdated
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to have a separate config file file for OT. This file is meant for vendor to customize. In reality, no one would build a SONiC as is, Vendors always have their own distribution.

@sonic-otn sonic-otn closed this Jan 31, 2024
@Weitang-Zheng Weitang-Zheng deleted the otn_pre_202411 branch January 31, 2024 12:21
sonic-otn pushed a commit that referenced this pull request Dec 16, 2024
…et#21095)

Adding the below fix from FRR FRRouting/frr#17297

This is to fix the following crash which is a statistical issue

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/lib/frr/zebra -A 127.0.0.1 -s 90000000 -M dplane_fpm_nl -M snmp'.
Program terminated with signal SIGABRT, Aborted.
#0  0x00007fccd7351e2c in ?? () from /lib/x86_64-linux-gnu/libc.so.6
[Current thread is 1 (Thread 0x7fccd6faf7c0 (LWP 36))]
(gdb) bt
#0  0x00007fccd7351e2c in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007fccd7302fb2 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#2  0x00007fccd72ed472 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#3  0x00007fccd75bb3a9 in _zlog_assert_failed (xref=xref@entry=0x7fccd7652380 <_xref.16>, extra=extra@entry=0x0) at ../lib/zlog.c:678
#4  0x00007fccd759b2fe in route_node_delete (node=<optimized out>) at ../lib/table.c:352
#5  0x00007fccd759b445 in route_unlock_node (node=0x0) at ../lib/table.h:258
#6  route_next (node=<optimized out>) at ../lib/table.c:436
#7  route_next (node=node@entry=0x56029d89e560) at ../lib/table.c:410
#8  0x000056029b6b6b7a in if_lookup_by_name_per_ns (ns=ns@entry=0x56029d873d90, ifname=ifname@entry=0x7fccc0029340 "PortChannel1020")
    at ../zebra/interface.c:312
#9  0x000056029b6b8b36 in zebra_if_dplane_ifp_handling (ctx=0x7fccc0029310) at ../zebra/interface.c:1867
#10 zebra_if_dplane_result (ctx=0x7fccc0029310) at ../zebra/interface.c:2221
#11 0x000056029b7137a9 in rib_process_dplane_results (thread=<optimized out>) at ../zebra/zebra_rib.c:4810
#12 0x00007fccd75a0e0d in thread_call (thread=thread@entry=0x7ffe8e553cc0) at ../lib/thread.c:1990
sonic-net#13 0x00007fccd7559368 in frr_run (master=0x56029d65a040) at ../lib/libfrr.c:1198
sonic-net#14 0x000056029b6ac317 in main (argc=9, argv=0x7ffe8e5540d8) at ../zebra/main.c:478
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