Skip to content

Conversation

@mattkur
Copy link
Contributor

@mattkur mattkur commented Oct 20, 2025

With many thanks, this comes from @yupavlen-ms's PR #1190 . Other parts of his PR have been split out or handed in different ways.

TODO:

  • Validate the two remaining entries (could be ...)
  • Some additional comments cleanup
  • Make sure I'm handling the Some/None in openhcl_boot appropriately
  • VMM tests
    • allow changing vtl2 memory/openvmm (pr approved)
    • allow changing vtl2 memory/hyper-v (not started yet)
    • discern dev/release runs (dev profiles require more memory per json)

@mattkur mattkur requested review from a team, amy-microsoft and chris-oo October 20, 2025 18:26
mattkur added a commit that referenced this pull request Oct 22, 2025
Promote the settings that change how VTL2 memory is allocated to the
Petri VM objects, rather than being hidden in the depths of the OpenVMM
config. This is a convenience for additional tests coming as part of
#2215 .
@mattkur mattkur added the release-ci-required Add to a PR to trigger PR gates in release mode label Oct 24, 2025
@mattkur mattkur marked this pull request as ready for review October 24, 2025 14:43
@mattkur mattkur requested review from a team as code owners October 24, 2025 14:43
Copilot AI review requested due to automatic review settings October 24, 2025 14:43
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR implements heuristic-based private pool memory allocation for OpenHCL boot, allowing the system to automatically determine appropriate DMA memory sizes when not explicitly specified by external sources. The changes enable OpenHCL to retrofit private pool memory into existing deployments that don't explicitly configure it.

Key Changes:

  • Adds a lookup table and calculation logic for determining VTL2 DMA hint values based on VP count and memory size
  • Updates the boot parameter logic to use heuristics when neither command line nor device tree specify pool sizes
  • Extends VMM tests to validate private pool behavior with various configurations

Reviewed Changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
openhcl/openhcl_boot/src/host_params/dt/dma_hint.rs New module implementing DMA hint calculation with lookup table and extrapolation logic
openhcl/openhcl_boot/src/host_params/dt/mod.rs Integrates DMA hint calculation into boot parameter processing with fallback to heuristics
openhcl/openhcl_boot/Cargo.toml Adds test dependencies for tracing support in unit tests
vmm_tests/vmm_tests/tests/tests/x86_64/openhcl_uefi.rs Adds new test cases and extends test helper to support configurable processor topology and VTL2 memory sizes
petri/src/vm/mod.rs Adds Debug derive to ProcessorTopology for improved test diagnostics

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

@github-actions
Copy link

amy-microsoft
amy-microsoft previously approved these changes Oct 30, 2025
Copy link

@amy-microsoft amy-microsoft left a comment

Choose a reason for hiding this comment

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

Nothing jumps out to me, but happy for others' opinions!

@github-actions
Copy link

@mattkur mattkur merged commit dcd23e2 into microsoft:main Oct 31, 2025
54 of 56 checks passed
@mattkur mattkur deleted the private-pool branch October 31, 2025 12:07
mattkur added a commit to mattkur/openvmm that referenced this pull request Nov 3, 2025
mattkur added a commit that referenced this pull request Nov 3, 2025
…cs (#2215)" (#2339)

This reverts commit dcd23e2.

Release CI is broken with this change. Revert while we debug further to
keep CI clean.
mattkur added a commit to mattkur/openvmm that referenced this pull request Nov 3, 2025
mattkur added a commit to mattkur/openvmm that referenced this pull request Nov 4, 2025
mattkur added a commit that referenced this pull request Nov 4, 2025
This re-appplies #2215, now that we've figured out the CI issues (I
hope).

- **vmm_tests: add large nvme relay tests**
- **test fix, pr feedback**
- **up the vm memory**
- **tests: correctly mark heavy and very_heavy tests as heavy and
very_heavy**
- **Reapply "openhcl_boot: set aside private pool memory based on
heuristics (#2215)" (#2339)**
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Guide release-ci-required Add to a PR to trigger PR gates in release mode unsafe Related to unsafe code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants