Skip to content

Commit 341d5a1

Browse files
committed
Squashed preview of feature/pcie rebase on top of main
This is a preview of the rebase that I'm about to do on the feature/pcie branch to bring it up to main. Signed-off-by: Riccardo Mancini <[email protected]>
1 parent 49a0cff commit 341d5a1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+2075
-1785
lines changed

.github/pull_request_template.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ Certificate of Origin and signing off your commits, please check
1616
## PR Checklist
1717

1818
- [ ] I have read and understand [CONTRIBUTING.md][3].
19+
- [ ] I have run `tools/devtool checkbuild --all` to verify that the PR passes
20+
build checks on all supported architectures.
1921
- [ ] I have run `tools/devtool checkstyle` to verify that the PR passes the
2022
automated style checks.
2123
- [ ] I have described what is done in these changes, why they are needed, and

CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,20 @@ and this project adheres to
1616
- [#5175](https://github.com/firecracker-microvm/firecracker/pull/5175): Allow
1717
including a custom cpu template directly in the json configuration file passed
1818
to `--config-file` under the `cpu_config` key.
19+
- [#5274](https://github.com/firecracker-microvm/firecracker/pull/5274): Allow
20+
taking diff snapshots even if dirty page tracking is disabled, by using
21+
`mincore(2)` to overapproximate the set of dirty pages. Only works if swap is
22+
disabled.
23+
- [#5290](https://github.com/firecracker-microvm/firecracker/pull/5290):
24+
Extended MMDS to support the EC2 IMDS-compatible session token headers (i.e.
25+
"X-aws-ec2-metadata-token" and "X-aws-ec2-metadata-token-ttl-seconds")
26+
alongside the MMDS-specific ones.
27+
- [#5290](https://github.com/firecracker-microvm/firecracker/pull/5290): Added
28+
`mmds.rx_invalid_token` and `mmds.rx_no_token` metrics to track the number of
29+
GET requests that were rejected due to token validation failures in MMDS
30+
version 2. These metrics also count requests that would be rejected in MMDS
31+
version 2 when MMDS version 1 is configured. They helps users assess readiness
32+
for migrating to MMDS version 2.
1933

2034
### Changed
2135

@@ -24,9 +38,21 @@ and this project adheres to
2438
Incremental snapshots remain in developer preview.
2539
- [#5282](https://github.com/firecracker-microvm/firecracker/pull/5282): Updated
2640
jailer to no longer require the executable file name to contain `firecracker`.
41+
- [#5290](https://github.com/firecracker-microvm/firecracker/pull/5290): Changed
42+
MMDS to validate the value of "X-metadata-token-ttl-seconds" header only if it
43+
is a PUT request to /latest/api/token, as in EC2 IMDS.
44+
- [#5290](https://github.com/firecracker-microvm/firecracker/pull/5290): Changed
45+
MMDS version 1 to support the session oriented method as in version 2,
46+
allowing easier migration to version 2. Note that MMDS version 1 accepts a GET
47+
request even with no token or an invalid token so that existing workloads
48+
continue to work.
2749

2850
### Deprecated
2951

52+
- [#5274](https://github.com/firecracker-microvm/firecracker/pull/5274):
53+
Deprecated the `enable_diff_snapshots` parameter of the `/snapshot/load` API.
54+
Use `track_dirty_pages` instead.
55+
3056
### Removed
3157

3258
### Fixed
@@ -43,6 +69,9 @@ and this project adheres to
4369
- [#4207](https://github.com/firecracker-microvm/firecracker/issues/4207): Fixed
4470
GSI numbering on aarch64 to correctly allow up to 96 devices being attached
4571
simultaneously.
72+
- [#5290](https://github.com/firecracker-microvm/firecracker/pull/5290): Fixed
73+
MMDS to reject PUT requests containing `X-Forwarded-For` header regardless of
74+
its casing (e.g. `x-forwarded-for`).
4675

4776
## [1.12.0]
4877

CONTRIBUTING.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,16 @@ following in the Firecracker root directory:
6363
```
6464
cat >> .git/hooks/pre-commit << EOF
6565
./tools/devtool checkstyle || exit 1
66+
./tools/devtool checkbuild --all || exit 1
6667
EOF
6768
```
6869

69-
This will automatically lint your Rust, markdown and python changes when running
70-
`git commit`, as well as running any other checks our CI validates as part of
71-
its 'Style' step. Most reported violations can be automatically fixed using
72-
`./tools/devtool fmt`.
70+
The first command will automatically lint your Rust, markdown and python changes
71+
when running `git commit`, as well as running any other checks our CI validates
72+
as part of its 'Style' step. Most reported violations can be automatically fixed
73+
using `./tools/devtool fmt`. The second command will then check that the code
74+
correctly compiles on all supported architectures, and that it passes Rust
75+
clippy rules defined for the project.
7376

7477
Your contribution needs to meet the following standards:
7578

Cargo.lock

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

DEPRECATED.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,5 @@ a future major Firecracker release, in accordance with our
2121
The functionality is substituted with ACPI.
2222
- \[[#2628](https://github.com/firecracker-microvm/firecracker/pull/2628)\] The
2323
`--basic` parameter of `seccompiler-bin`.
24+
- \[[#5274](https://github.com/firecracker-microvm/firecracker/pull/5274)\]: The
25+
`enable_diff_snapshots` body field in `PUT` requests on `/snapshot/load`

0 commit comments

Comments
 (0)