Skip to content

Add Patina Config Enforcement#1324

Merged
os-d merged 1 commit intoOpenDevicePartnership:majorfrom
os-d:config
Mar 5, 2026
Merged

Add Patina Config Enforcement#1324
os-d merged 1 commit intoOpenDevicePartnership:majorfrom
os-d:config

Conversation

@os-d
Copy link
Contributor

@os-d os-d commented Feb 17, 2026

Description

Per RFC 25, this patch adds config.toml enforcement of the Patina config version.

config.toml is updated to reflect the various settings Patina wants to use. Each is documented on why.

build.rs verifies the patina config version is the correct one and will fail the build if not.

Docs are updated.

Note this targets the major branch.

  • Impacts functionality?
  • Impacts security?
  • Breaking change?
  • Includes tests?
  • Includes documentation?

How This Was Tested

Tested building Q35 and SBSA and booting them to Windows. Settings were validated in build.rs and by outside factors such as binary size.

Integration Instructions

Patina's .cargo/config.toml must be copied to the platform's .cargo/config.toml. See the docs for more details.

@os-d os-d linked an issue Feb 17, 2026 that may be closed by this pull request
@github-actions github-actions bot added impact:breaking-change Requires integration attention type:documentation Improvements or additions to documentation labels Feb 17, 2026
@codecov
Copy link

codecov bot commented Feb 17, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@cfernald cfernald self-requested a review February 18, 2026 01:01
@os-d os-d changed the base branch from main to major February 26, 2026 16:35
@os-d os-d force-pushed the config branch 2 times, most recently from 7ba501c to 76a19e1 Compare February 26, 2026 16:39
@os-d os-d marked this pull request as ready for review February 26, 2026 16:45
Per RFC 25, this patch adds config.toml enforcement
of the Patina config version.

config.toml is updated to reflect the various settings Patina wants
to use. Each is documented on why.

build.rs verifies the patina config version is the correct one and
will fail the build if not.

Docs are updated.

Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
@patina-automation
Copy link
Contributor

QEMU Validation Failed

QEMU validation did not complete successfully or did not shutdown as expected.

Workflow run: https://github.com/OpenDevicePartnership/patina/actions/runs/22462836359

Job Results

Job Result
Gather Incoming PR Metadata
Run Patina QEMU Validation / Preflight Checks
Run Patina QEMU Validation / Get Constants / Get Repository Constants
Run Patina QEMU Validation / Validate QEMU Q35 (Windows)
Run Patina QEMU Validation / Validate QEMU - Q35 (Linux)
Run Patina QEMU Validation / Emit PR Metadata

Error Details

qemu-validation-logs-Windows-Q35/q35-windows.log (4 error/warning sections)
warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

This comment was automatically generated by the Patina QEMU PR Validation Post workflow.

@os-d
Copy link
Contributor Author

os-d commented Feb 26, 2026

QEMU Validation Failed

QEMU validation did not complete successfully or did not shutdown as expected.

Workflow run: https://github.com/OpenDevicePartnership/patina/actions/runs/22462836359

Job Results

Job Result
Gather Incoming PR Metadata ✅
Run Patina QEMU Validation / Preflight Checks ✅
Run Patina QEMU Validation / Get Constants / Get Repository Constants ✅
Run Patina QEMU Validation / Validate QEMU Q35 (Windows) ❌
Run Patina QEMU Validation / Validate QEMU - Q35 (Linux) ✅
Run Patina QEMU Validation / Emit PR Metadata ✅

Error Details

qemu-validation-logs-Windows-Q35/q35-windows.log (4 error/warning sections)

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

warning: patch `patina_acpi v20.0.3 (D:\a\patina\patina\components\patina_acpi)` was not used in the crate graph
help: Check that the patched package version and available features are compatible

This comment was automatically generated by the Patina QEMU PR Validation Post workflow.

This failed due to a QEMU infra bug: ERROR:../../../block/vvfat.c:2429:commit_direntries: assertion failed: (mapping)

@makubacki
Copy link
Collaborator

This failed due to a QEMU infra bug: ERROR:../../../block/vvfat.c:2429:commit_direntries: assertion failed: (mapping)

In case others come across this, it's been an issue on Windows hosts for a while. Now being tracked here to resolve for patina-qemu: OpenDevicePartnership/patina-qemu#188

@os-d os-d merged commit 77955f0 into OpenDevicePartnership:major Mar 5, 2026
8 checks passed
@os-d os-d deleted the config branch March 5, 2026 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

impact:breaking-change Requires integration attention type:documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Consider Downstream Build Options for Patina Consumers

4 participants