Skip to content

sanitize interrupt logging, bump compiler, merge upstream, build simulator, snapshot fixes#11

Merged
rcgoodfellow merged 20 commits into
oxidefrom
ry/bump-sde
Feb 24, 2026
Merged

sanitize interrupt logging, bump compiler, merge upstream, build simulator, snapshot fixes#11
rcgoodfellow merged 20 commits into
oxidefrom
ry/bump-sde

Conversation

@rcgoodfellow

@rcgoodfellow rcgoodfellow commented Jan 26, 2026

Copy link
Copy Markdown
Collaborator
  • Interrupts were being logged to a buffer that only shows up when the owning process exists. Change interrupt logging to use the same macros as everybody else so log entries show up in the overall dpd log in a reasonable way.

  • Add support for 128 bit snapshot targets and fix upper bound range bug in stage selection for snapshots.

  • Merge from upstream. Notably, this pulls in the tofino model simulator.

  • Depends on merge from upstream tofino-p4c#2

The vast majority of this PR is an upstream merge. My actual changes begin at fd6a6fd.

@rcgoodfellow rcgoodfellow force-pushed the ry/bump-sde branch 3 times, most recently from 2a83977 to 14572af Compare January 30, 2026 22:43
@rcgoodfellow rcgoodfellow changed the title update p4c sanitize interrupt logging Jan 30, 2026
@rcgoodfellow rcgoodfellow marked this pull request as ready for review January 30, 2026 22:47
@rcgoodfellow rcgoodfellow changed the title sanitize interrupt logging sanitize interrupt logging, bump compiler Feb 4, 2026
@rcgoodfellow rcgoodfellow changed the title sanitize interrupt logging, bump compiler sanitize interrupt logging, bump compiler, merge upstream Feb 4, 2026
@rcgoodfellow rcgoodfellow changed the title sanitize interrupt logging, bump compiler, merge upstream sanitize interrupt logging, bump compiler, merge upstream, snapshot fixes Feb 14, 2026
@rcgoodfellow rcgoodfellow changed the title sanitize interrupt logging, bump compiler, merge upstream, snapshot fixes sanitize interrupt logging, bump compiler, merge upstream, build simulator, snapshot fixes Feb 14, 2026
rcgoodfellow added a commit to oxidecomputer/dendrite that referenced this pull request Feb 18, 2026
rcgoodfellow added a commit to oxidecomputer/dendrite that referenced this pull request Feb 18, 2026

@Nieuwejaar Nieuwejaar left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

A couple of minor nits, but this looks great. I'm shocked that it took so little to get the model to build.

What happened with boost? I forget why I did all that in the first place. Was it not in helios at all? Did helios have an old version? Wait...did I add it to helios?

phv_recs++;
continue;
}
/* Only use the record with field_lsb == 0 (the primary record) */

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

"Record" or "records"? If there is only one record in the snapshot we care about, shouldn't we be breaking out of the loop after the memcpy below? If there is more than one "primary" record, when (if ever) do the secondary records get consumed?

Oh, I see now. We do break out of the loop, but keyed on field_found. That makes sense, just to keep the same structure as the loop below, but a comment at the top of the loop would help.

Comment thread pkgsrc/bf-drivers/src/pipe_mgr/pipe_mgr_entry_format.c Outdated
Comment thread pkgsrc/tofino-model/runner/os_privs.cpp Outdated

#else

// TODO: emulate these if building for non-Linux OS

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Interesting. I wonder what non-Linux OS they were using. FreeBSD?

@@ -0,0 +1,65 @@
/*
* Stub implementation of portmanager for illumos.
* Real network interface support would require DLPI implementation.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

What does this mean? If the model was trying to use a nic directly, rather than a TCP socket?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

This is for the simulated port interfaces that plug into the model. The thing that is done with vnic devices on linux.

@rcgoodfellow

Copy link
Copy Markdown
Collaborator Author

What happened with boost?

Pulling in the latest p4c brought in updates to the c++ standard being used as well as the version of the boost the compiler was using. Compiling the SDE with one version of c++/boost and p4c with another was a real mess, so I just elected to use the system's boost on both linux and helios which is much newer than the vendored boost and works fine with c++20.

jafingerhut and others added 13 commits February 21, 2026 16:59
…ckage (p4lang#85)

Signed-off-by: Andy Fingerhut <andy_fingerhut@alum.wustl.edu>
Signed-off-by: fruffy <fruffy@nyu.edu>
Signed-off-by: fruffy <fruffy@nyu.edu>
Signed-off-by: Fabian Ruffy <5960321+fruffy@users.noreply.github.com>
Signed-off-by: Andy Fingerhut <andy_fingerhut@alum.wustl.edu>
…paces with temporary directories. (p4lang#94)

Signed-off-by: fruffy <fruffy@nyu.edu>
…4lang#65)

Signed-off-by: fruffy <fruffy@nyu.edu>
Co-authored-by: Prathima Kotikalapudi <prathima.kotikalapudi@intel.com>
…port (p4lang#84)

Signed-off-by: Andy Fingerhut <andy.fingerhut@gmail.com>
Signed-off-by: fruffy <fruffy@nyu.edu>
Signed-off-by: Vladimir Gurevich <vag@p4ica.com>
Signed-off-by: fruffy <fruffy@nyu.edu>
Signed-off-by: Andy Fingerhut <andy.fingerhut@gmail.com>
Signed-off-by: Fabian Ihle <fabian.ihle@uni-tuebingen.de>
Signed-off-by: fruffy <fruffy@nyu.edu>
Signed-off-by: Vladimir Gurevich <vag@p4ica.com>
Co-authored-by: Andy Fingerhut <andy.fingerhut@gmail.com>
Co-authored-by: Fabian Ruffy <5960321+fruffy@users.noreply.github.com>
Co-authored-by: Vladimir Gurevich <vag@p4ica.com>
Signed-off-by: sai-pracheetha <sai.beeyam@intel.com>
Signed-off-by: Alexander Gall <alexander.gall@gmail.com>
rcgoodfellow added a commit to oxidecomputer/dendrite that referenced this pull request Feb 22, 2026
@rcgoodfellow rcgoodfellow merged commit 53519b8 into oxide Feb 24, 2026
3 checks passed
@rcgoodfellow rcgoodfellow deleted the ry/bump-sde branch February 24, 2026 15:51
rcgoodfellow added a commit to oxidecomputer/dendrite that referenced this pull request Feb 26, 2026
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.

9 participants