#4534: Remove multi irq support for mmio devices
Changes
-Utilized Option instead of Vector to store IRQ lines for MMIO devices. -Add test to test this. -Update existing tests ...
Reason
Currently, Firecracker have an ability to create multiple irqs for MMIO devices; however, no more than one IRQ is ever used. Therefore, it was suggested to change this to use an Option instead of a vector of length 0 or 1. ...
License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the Apache 2.0 license. For more information on following Developer
Certificate of Origin and signing off your commits, please check
CONTRIBUTING.md.
PR Checklist
- [ ] If a specific issue led to this PR, this PR closes the issue.
- [ ] The description of changes is clear and encompassing.
- [ ] Any required documentation changes (code and docs) are included in this PR.
- [ ] API changes follow the Runbook for Firecracker API changes.
- [ ] User-facing changes are mentioned in
CHANGELOG.md. - [ ] All added/changed functionality is tested.
- [ ] New
TODOs link to an issue. - [ ] Commits meet contribution quality standards.
- [ ] This functionality cannot be added in
rust-vmm.
Codecov Report
Attention: Patch coverage is 91.66667% with 1 line in your changes missing coverage. Please review.
Project coverage is 84.31%. Comparing base (
3acf37d) to head (65e0e84). Report is 2 commits behind head on main.
:exclamation: Current head 65e0e84 differs from pull request most recent head a61d5c1
Please upload reports for the commit a61d5c1 to get more accurate results.
| Files with missing lines | Patch % | Lines |
|---|---|---|
| src/vmm/src/device_manager/mmio.rs | 91.66% | 1 Missing :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## main #4601 +/- ##
==========================================
- Coverage 84.32% 84.31% -0.01%
==========================================
Files 249 249
Lines 27512 27516 +4
==========================================
+ Hits 23200 23201 +1
- Misses 4312 4315 +3
| Flag | Coverage Δ | |
|---|---|---|
| 5.10-c5n.metal | 84.54% <100.00%> (-0.01%) |
:arrow_down: |
| 5.10-m5n.metal | 84.52% <100.00%> (-0.02%) |
:arrow_down: |
| 5.10-m6a.metal | 83.81% <100.00%> (-0.01%) |
:arrow_down: |
| 5.10-m6g.metal | 80.89% <90.00%> (-0.01%) |
:arrow_down: |
| 5.10-m6i.metal | 84.52% <100.00%> (-0.01%) |
:arrow_down: |
| 5.10-m7g.metal | 80.89% <90.00%> (-0.01%) |
:arrow_down: |
| 6.1-c5n.metal | 84.54% <100.00%> (-0.01%) |
:arrow_down: |
| 6.1-m5n.metal | 84.52% <100.00%> (-0.02%) |
:arrow_down: |
| 6.1-m6a.metal | 83.81% <100.00%> (-0.02%) |
:arrow_down: |
| 6.1-m6g.metal | 80.89% <90.00%> (-0.01%) |
:arrow_down: |
| 6.1-m6i.metal | 84.51% <100.00%> (-0.02%) |
:arrow_down: |
| 6.1-m7g.metal | 80.89% <90.00%> (-0.01%) |
:arrow_down: |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Issues should be resolved.
Thanks for squashing the commits! It seems that a rebase went a bit awry though, your branch now has some commits that are already on main :( Could you drop those, so that only your commit remains part of this PR? Also, please add a commit body message - it's required for the style CI step to pass - just rephrasing the what you put under "Reason" in the PR description will be fine :).
Also I think there's still a compilation issue on ARM, could you have a look at that, too?
Wanted to write that I won't have access to a computer for at least a month (out of town), so this will have to be on the back burner for a while.
Related to https://github.com/firecracker-microvm/firecracker/issues/4534
Wanted to write that I won't have access to a computer for at least a month (out of town), so this will have to be on the back burner for a while.
Hi @andr3wy, are you still interested in working on this?
Hi @andr3wy, I've gone ahead and rebased the PR, and fixed the remaining outstanding compiler warnings. Thanks again for your contribution here!