Skip to content

scrimlet-reconcilers: Add dpd port reconciliation#10449

Open
jgallagher wants to merge 1 commit into
john/feature-sled-agent-scrimlet-reconcilersfrom
john/scrimlet-reconcilers-dpd-ports
Open

scrimlet-reconcilers: Add dpd port reconciliation#10449
jgallagher wants to merge 1 commit into
john/feature-sled-agent-scrimlet-reconcilersfrom
john/scrimlet-reconcilers-dpd-ports

Conversation

@jgallagher
Copy link
Copy Markdown
Contributor

This PR looks big but over 60% of it is tests; the production code that needs careful review is the new sled-agent/scrimlet-reconcilers/src/dpd_reconciler/port_reconciler.rs module. It contains a port of what sync_switch_reconciler does to configure QSFP ports, with several changes:

  1. We read the desired settings from RackNetworkConfig instead of the db
  2. We compute diffs via daft
  3. Includes a workaround for a dpd issue where ports that change speed or FEC have to be removed before reapplying. @internet-diglett is working on a dpd change that would make this unnecessary, but for now it's easy enough to work around on our side.

@jgallagher jgallagher added the networking Related to the networking. label May 15, 2026
@internet-diglett
Copy link
Copy Markdown
Contributor

Created oxidecomputer/dendrite#272 for testing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

networking Related to the networking.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants