Skip to content

Get asic PCI ID from CHASSIS_STATE_DB and update asic_id in CONFIG_DB#9681

Merged
arlakshm merged 1 commit intosonic-net:masterfrom
mlorrillere:pr-fabric-pci-id
Apr 25, 2022
Merged

Get asic PCI ID from CHASSIS_STATE_DB and update asic_id in CONFIG_DB#9681
arlakshm merged 1 commit intosonic-net:masterfrom
mlorrillere:pr-fabric-pci-id

Conversation

@mlorrillere
Copy link
Copy Markdown
Contributor

Asic PCI ID (PCI address) is collected by chassisd (inside pmon -
sonic-net/sonic-platform-daemons#175) and saved in CHASSIS_STATE_DB (in
redis_chassis). CHASSIS_STATE_DB is accessible by swss containers.

At docker-init.sh (script is called after swss container is created and before
anything that could run in swss like orchagent...), we wait until asic PCI ID
of the corresponding asic is populated by chassisd. We then update asic_id in
CONFIG_DB of asic's database.

A system supporting dynamic asic PCI ID identification requires to have a file
(empty) use_pci_id_chassis in its platform dir.

When orchagent runs, it has correct asic PCI ID in its CONFIG_DB.

Together with this PR:

sonic-net/sonic-platform-daemons#175
sonic-net/sonic-platform-common#185

Signed-off-by: Maxime Lorrillere mlorrillere@arista.com

@mlorrillere mlorrillere requested a review from lguohan as a code owner January 5, 2022 17:37
@mlorrillere
Copy link
Copy Markdown
Contributor Author

@arlakshm @rlhui Please disregard PR7649 and use this one instead.

@arlakshm
Copy link
Copy Markdown
Contributor

Hi @mlorrillere, on config load_minigraph all the containers are restarted; the config table is flushed and repopulate from the minigraph. In that case will, docker_init.sh is executed on container restart?

@arlakshm
Copy link
Copy Markdown
Contributor

/Azp Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Command 'Azure.sonic-buildimage' is not supported by Azure Pipelines.

Supported commands
  • help:
    • Get descriptions, examples and documentation about supported commands
    • Example: help "command_name"
  • list:
    • List all pipelines for this repository using a comment.
    • Example: "list"
  • run:
    • Run all pipelines or specific pipelines for this repository using a comment. Use this command by itself to trigger all related pipelines, or specify specific pipelines to run.
    • Example: "run" or "run pipeline_name, pipeline_name, pipeline_name"
  • where:
    • Report back the Azure DevOps orgs that are related to this repository and org
    • Example: "where"

See additional documentation.

@arlakshm
Copy link
Copy Markdown
Contributor

/Azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@mlorrillere
Copy link
Copy Markdown
Contributor Author

Hi @mlorrillere, on config load_minigraph all the containers are restarted; the config table is flushed and repopulate from the minigraph. In that case will, docker_init.sh is executed on container restart?

Hi @arlakshm,
docker_init.sh is the entry point of the container, so it will be run every time an swss container is started.

@arlakshm
Copy link
Copy Markdown
Contributor

arlakshm commented Feb 8, 2022

/Azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@rlhui rlhui added the Chassis 🤖 Modular chassis support label Apr 12, 2022
arlakshm
arlakshm previously approved these changes Apr 18, 2022
@arlakshm
Copy link
Copy Markdown
Contributor

Can you please fix the conflicts

Asic PCI ID (PCI address) is collected by chassisd (inside pmon -
sonic-net/sonic-platform-daemons#175) and saved in CHASSIS_STATE_DB (in
redis_chassis). CHASSIS_STATE_DB is accessible by swss containers.

At docker-init.sh (script is called after swss container is created and before
anything that could run in swss like orchagent...), we wait until asic PCI ID
of the corresponding asic is populated by chassisd. We then update asic_id in
CONFIG_DB of asic's database.

A system supporting dynamic asic PCI ID identification requires to have a file
(empty) use_pci_id_chassis in its platform dir.

When orchagent runs, it has correct asic PCI ID in its CONFIG_DB.

Together with this PR:

sonic-net/sonic-platform-daemons#175
sonic-net/sonic-platform-common#185

Signed-off-by: Maxime Lorrillere <mlorrillere@arista.com>
@arlakshm arlakshm merged commit 0606add into sonic-net:master Apr 25, 2022
liushilongbuaa pushed a commit to liushilongbuaa/sonic-buildimage that referenced this pull request Jun 20, 2022
Related work items: #49, #58, #107, sonic-net#247, sonic-net#249, sonic-net#277, sonic-net#593, sonic-net#597, sonic-net#1035, sonic-net#2130, sonic-net#2150, sonic-net#2165, sonic-net#2169, sonic-net#2178, sonic-net#2179, sonic-net#2187, sonic-net#2188, sonic-net#2191, sonic-net#2195, sonic-net#2197, sonic-net#2198, sonic-net#2200, sonic-net#2202, sonic-net#2206, sonic-net#2209, sonic-net#2211, sonic-net#2216, sonic-net#7909, sonic-net#8927, sonic-net#9681, sonic-net#9733, sonic-net#9746, sonic-net#9850, sonic-net#9967, sonic-net#10104, sonic-net#10152, sonic-net#10168, sonic-net#10228, sonic-net#10266, sonic-net#10288, sonic-net#10294, sonic-net#10313, sonic-net#10394, sonic-net#10403, sonic-net#10404, sonic-net#10421, sonic-net#10431, sonic-net#10437, sonic-net#10445, sonic-net#10457, sonic-net#10458, sonic-net#10465, sonic-net#10467, sonic-net#10469, sonic-net#10470, sonic-net#10474, sonic-net#10477, sonic-net#10478, sonic-net#10482, sonic-net#10485, sonic-net#10488, sonic-net#10489, sonic-net#10492, sonic-net#10494, sonic-net#10498, sonic-net#10501, sonic-net#10509, sonic-net#10512, sonic-net#10514, sonic-net#10516, sonic-net#10517, sonic-net#10523, sonic-net#10525, sonic-net#10531, sonic-net#10532, sonic-net#10538, sonic-net#10555, sonic-net#10557, sonic-net#10559, sonic-net#10561, sonic-net#10565, sonic-net#10572, sonic-net#10574, sonic-net#10576, sonic-net#10578, sonic-net#10581, sonic-net#10585, sonic-net#10587, sonic-net#10599, sonic-net#10607, sonic-net#10611, sonic-net#10616, sonic-net#10618, sonic-net#10619, sonic-net#10623, sonic-net#10624, sonic-net#10633, sonic-net#10646, sonic-net#10655, sonic-net#10660, sonic-net#10664, sonic-net#10680, sonic-net#10683
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Chassis 🤖 Modular chassis support

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants