Jinank Jain
8c796e6d5d
hypervisor: Add MSHV implementation of VcpuInit
...
Extend the VcpuInit interface to accomodate changes for MSHV on aarch64.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-19 23:23:45 +00:00
Jinank Jain
630f5c1f14
hypervisor: Add MSHV implementation of RegList
...
Extend the RegList interface to accomodate changes for MSHV on aarch64.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-19 23:23:45 +00:00
Jinank Jain
5cbf907200
hypervisor: Add implementation to fetch host IPA limit on MSHV
...
This fixes an compilation error when we try to compile CloudHypervisor
for MSHV on aarch64.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-19 09:39:21 +00:00
dependabot[bot]
bfeab76059
build: Bump async-trait from 0.1.85 to 0.1.86
...
Bumps [async-trait](https://github.com/dtolnay/async-trait ) from 0.1.85 to 0.1.86.
- [Release notes](https://github.com/dtolnay/async-trait/releases )
- [Commits](https://github.com/dtolnay/async-trait/compare/0.1.85...0.1.86 )
---
updated-dependencies:
- dependency-name: async-trait
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-02-19 04:30:55 +00:00
dependabot[bot]
12143ca72f
build: Bump proc-macro2 from 1.0.92 to 1.0.93
...
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2 ) from 1.0.92 to 1.0.93.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases )
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.92...1.0.93 )
---
updated-dependencies:
- dependency-name: proc-macro2
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-02-18 00:27:36 +00:00
dependabot[bot]
ba05bdd085
build: Bump proc-macro-crate from 3.1.0 to 3.2.0
...
Bumps [proc-macro-crate](https://github.com/bkchr/proc-macro-crate ) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/bkchr/proc-macro-crate/releases )
- [Commits](https://github.com/bkchr/proc-macro-crate/commits/v3.2.0 )
---
updated-dependencies:
- dependency-name: proc-macro-crate
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-02-17 12:07:24 +00:00
Jinank Jain
171b28ce52
hypervisor, vmm: Avoid leaking hypervisor specific data structure
...
Currently a bunch of KVM specific interfaces are leaked into the vmm
crate which should ideally does not contain any hypervisor specific data
structures.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-12 23:08:43 +00:00
Jinank Jain
5b929cb277
hypervisor: Implement hypervisor agnostic variant of VcpuInit
...
This will help in fixing the build issue for MSHV on ARM64.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-12 23:08:43 +00:00
Jinank Jain
ee0b0d43d8
hypervisor: Implement hypervisor agnostic variant of RegList
...
This helps in unification of RegList across different platforms.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-12 23:08:43 +00:00
Jinank Jain
061482340e
hypervisor: Implement hypervisor agnostic Register interface
...
This will help in fixing the build issue for MSHV on ARM64.
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-12 23:08:43 +00:00
dependabot[bot]
c43ae1dc9d
build: Bump dirs from 5.0.1 to 6.0.0
...
Bumps [dirs](https://github.com/soc/dirs-rs ) from 5.0.1 to 6.0.0.
- [Commits](https://github.com/soc/dirs-rs/commits )
---
updated-dependencies:
- dependency-name: dirs
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-02-11 23:57:37 +00:00
Jinank Jain
7db3002e1d
build: Bump mshv crate to latest version
...
Move mshv crates from v0.3.2 to v0.3.3
Signed-off-by: Jinank Jain <jinankjain@microsoft.com >
2025-02-11 14:31:48 +00:00
Ruoqing He
07b7457c2e
build: Bump getrandom from 0.2.15 to 0.3.1
...
Manually bump `getrandom` due to API changes.
Bumps [getrandom](https://github.com/rust-random/getrandom ) from 0.2.15 to 0.3.1.
- [Changelog](https://github.com/rust-random/getrandom/blob/master/CHANGELOG.md )
- [Commits](rust-random/getrandom@v0.2.15...v0.3.1)
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-11 07:40:16 +08:00
Ruoqing He
dc9142f86c
ci: Introduce lychee to check links
...
Use `lychee` to check availability of links in cloud-hypervisor.
The urls explictly excluded in config file are manually checked.
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 22:11:19 +08:00
Ruoqing He
6fa7c84d2e
misc: Update link in release-note.md
...
We have lost track to releases before v27.0 since these projects no
longer exists. Delete links to those projects.
Update links to a detailed view specific to each group of release.
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 17:32:54 +08:00
Ruoqing He
cc734e2e44
docs: Fix broken to fedora 36 artifacts
...
Content of fedora 36 have been moved to fedora archives [1], update
accordingly.
Format `README.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
[1] http://archives.fedoraproject.org/pub/archive/fedora/
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:47:14 +08:00
Ruoqing He
e3e83362d6
docs: Fix broken link in CONTRIBUTING.md
...
Previous repo hosts details of `Rust Style` is removed, point `Rust
Style` to `style-guide` in `rust-lang/rust` repo.
Link to provide illustration on `signed-off-by language` is also
removed, use a snapshot found in web archive [1] instead.
Format `CONTRIBUTING.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
[1] https://web.archive.org
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:40:57 +08:00
Ruoqing He
730cf1e944
docs: Fix broken link to intel 0x80 debug port
...
Previous link to provide details of `0x80 debug port` is removed, which
could no longer be found on intel site [1]. Use snapshot found in web
archive [2] to fix this link.
Format `debug-port.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
[1] https://www.intel.com/content/www/us/en/homepage.html
[2] https://web.archive.org
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:40:44 +08:00
Ruoqing He
1caa69d0cc
docs: Update outdated intel_sgx.md
...
TDX homepage was moved to elsewhere, and `sgx` support is upstreamed
since v5.11 kernel.
Format `intel_sgx.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:39:16 +08:00
Ruoqing He
abcbf43433
docs: Update outdated intel_tdx.md
...
TDX homepage was moved to elsewhere, and `tdx-tools` repo was removed.
Provide a valid link of TDX homepage and change all reference to
`tdx-tools` to `tdx-linux`.
Format `intel_tdx.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:38:46 +08:00
Ruoqing He
af74de2779
docs: Fix broken link in io_throttling.md
...
There is a link referencing `rate-limiter` module of `firecracker`, but
that module no longer exsits.
Point the link to a commit with the same date in `firecracker` when this
commit was merged to `cloud-hypervisor`.
Format `io_throttling.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:38:22 +08:00
Ruoqing He
dfebc8929d
docs: Fix broken link to docs/arm64.md
...
`docs/arm64.md` was removed and splited into `README.md`, `building.md`
and `uefi.md` in #4991 .
Let's point it to
`https://github.com/cloud-hypervisor/cloud-hypervisor/blob/8ab15b9a984a448006f97b1211498c1bb583de3b/docs/arm64.md `
the commit right before `docs/arm64.md` was removed in main branch.
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:37:50 +08:00
Ruoqing He
9988379f6b
docs: Fix link to docs/logging.md
...
Previous link `docs/logging` is not valid, replacing `docs/logging` with
`docs/logging.md`.
Format `logging.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:37:03 +08:00
Ruoqing He
4d12192490
docs: Fix broken link in amd_sev_snp.md
...
Previous link to details of SNP is now broken, pointing that section to
a valid link [1].
Format `amd_sev_snp.md` using `mdformat` with GitHub Flavored Markdown
(GFM).
[1] https://www.amd.com/content/dam/amd/en/documents/epyc-business-docs/solution-briefs/amd-secure-encrypted-virtualization-solution-brief.pdf
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-02-08 16:36:48 +08:00
Wei Liu
9f9cfeb5be
build: Provide CH_EXTRA_VERSION
...
Use this to add any extra versioning information to the binary. It is
useful when packaging Cloud Hypervisor.
Signed-off-by: Wei Liu <liuwe@microsoft.com >
2025-02-04 19:33:10 +00:00
Bo Chen
3fa1e77adc
build: Release v44.0
...
Signed-off-by: Bo Chen <bchen@crusoe.ai >
v44.0
2025-02-03 18:09:27 +00:00
dependabot[bot]
b8424ea506
build: Bump colorchoice from 1.0.2 to 1.0.3
...
Bumps [colorchoice](https://github.com/rust-cli/anstyle ) from 1.0.2 to 1.0.3.
- [Commits](https://github.com/rust-cli/anstyle/compare/colorchoice-v1.0.2...colorchoice-v1.0.3 )
---
updated-dependencies:
- dependency-name: colorchoice
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-24 23:56:13 +00:00
Ruoqing He
0c2fe29f61
arch: riscv64: Fix interrupt-controller FDT property
...
This is a typo here, `interrupt-controller` attribute of each CPU node
should not have a `#` prepended.
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-01-24 12:24:02 +00:00
dependabot[bot]
b445d219ca
build: Bump uuid from 1.8.0 to 1.12.1
...
Bumps [uuid](https://github.com/uuid-rs/uuid ) from 1.8.0 to 1.12.1.
- [Release notes](https://github.com/uuid-rs/uuid/releases )
- [Commits](https://github.com/uuid-rs/uuid/compare/1.8.0...1.12.1 )
---
updated-dependencies:
- dependency-name: uuid
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-24 00:40:22 +00:00
dependabot[bot]
6de283f42c
build: Bump micro_http from ef43cef to ef96f62
...
Bumps [micro_http](https://github.com/firecracker-microvm/micro-http ) from `ef43cef` to `ef96f62`.
- [Commits](https://github.com/firecracker-microvm/micro-http/compare/ef43cef7162a55a6790d528a5e76b4fe2da22de0...ef96f623c46e221ebf9b6037567f97ec57683afd )
---
updated-dependencies:
- dependency-name: micro_http
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-22 23:49:15 +00:00
Rob Bradford
f892789481
docs: Update documentation for new kernel configuration
...
Replace the use of a reference kernel configuration file from this
repository with the use of a defconfig from the linux fork.
Signed-off-by: Rob Bradford <rbradford@rivosinc.com >
2025-01-22 17:45:32 +00:00
dependabot[bot]
f96554cbe9
build: Bump clap_lex from 0.7.2 to 0.7.4
...
Bumps [clap_lex](https://github.com/clap-rs/clap ) from 0.7.2 to 0.7.4.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_lex-v0.7.2...clap_lex-v0.7.4 )
---
updated-dependencies:
- dependency-name: clap_lex
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-21 23:48:31 +00:00
Ruoqing He
3509b5bf4a
hypervisor: Create vcpu before initialize AIA
...
Create a corresponding `vcpu` in `test_create_aia` to capture wrongly
configured RISC-V IMSIC attr.
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-01-21 12:53:54 +00:00
Ruoqing He
cf463b88b7
hypervisor: Fix AIA IMSIC attr calculation
...
The IMSIC attr of RISC-V AIA is wrongly configured to start from 0, which
would error out with `os error 22` (invalid argument).
```console
Error booting VM: VmBoot(DeviceManager(CreateInterruptController(CreateAia(CreateVaia(Vaia error SetDeviceAttribute(SetDeviceAttribute(Invalid argument (os error 22))))))))
```
`riscv_imsic_attr_of` should shift `cpu_index` by 1 here to produce
correct IMSIC attr.
Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn >
2025-01-21 12:53:54 +00:00
dependabot[bot]
ca8eda5399
build: Bump autocfg from 1.3.0 to 1.4.0
...
Bumps [autocfg](https://github.com/cuviper/autocfg ) from 1.3.0 to 1.4.0.
- [Commits](https://github.com/cuviper/autocfg/compare/1.3.0...1.4.0 )
---
updated-dependencies:
- dependency-name: autocfg
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-21 00:08:19 +00:00
dependabot[bot]
45b770ea9f
build: Bump fastrand from 2.2.0 to 2.3.0
...
Bumps [fastrand](https://github.com/smol-rs/fastrand ) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/smol-rs/fastrand/releases )
- [Changelog](https://github.com/smol-rs/fastrand/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/fastrand/compare/v2.2.0...v2.3.0 )
---
updated-dependencies:
- dependency-name: fastrand
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-19 09:51:20 +00:00
dependabot[bot]
d2c4ceb99a
build: Bump uuid-macro-internal from 1.10.0 to 1.12.0
...
Bumps [uuid-macro-internal](https://github.com/uuid-rs/uuid ) from 1.10.0 to 1.12.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases )
- [Commits](https://github.com/uuid-rs/uuid/compare/1.10.0...1.12.0 )
---
updated-dependencies:
- dependency-name: uuid-macro-internal
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-17 00:32:04 +00:00
dependabot[bot]
caf7cae2fa
build: Bump async-executor from 1.11.0 to 1.13.1
...
Bumps [async-executor](https://github.com/smol-rs/async-executor ) from 1.11.0 to 1.13.1.
- [Release notes](https://github.com/smol-rs/async-executor/releases )
- [Changelog](https://github.com/smol-rs/async-executor/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/async-executor/compare/v1.11.0...v1.13.1 )
---
updated-dependencies:
- dependency-name: async-executor
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-16 00:08:08 +00:00
Arvind Vasudev
81eca69b40
pci: Adding support for printing the device's address on a DMA map and unmap errors
...
Signed-off-by: Arvind Vasudev <avasudev@crusoeenergy.com >
2025-01-15 18:14:35 +00:00
Arvind Vasudev
8c07294691
pci: Implementing Debug for PciBdf to aid with debugging
...
Signed-off-by: Arvind Vasudev <avasudev@crusoeenergy.com >
2025-01-15 18:14:35 +00:00
Rob Bradford
2f9436bc12
build: Switch to named released kernel binary
...
For more control over updating the guest kernel use a fixed tag name
rather than fetching the latest.
Signed-off-by: Rob Bradford <rbradford@rivosinc.com >
2025-01-15 09:21:16 +00:00
dependabot[bot]
62fade97d1
build: Bump tempfile from 3.11.0 to 3.12.0
...
Bumps [tempfile](https://github.com/Stebalien/tempfile ) from 3.11.0 to 3.12.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.11.0...v3.12.0 )
---
updated-dependencies:
- dependency-name: tempfile
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-14 23:49:04 +00:00
Nikolay Edigaryev
5a8df3622c
tests: ensure that IOMMU maximum address width in bits is respected
...
Signed-off-by: Nikolay Edigaryev <edigaryev@gmail.com >
2025-01-14 21:31:47 +00:00
Nikolay Edigaryev
27fda753e1
virtio-devices: iommu: allow limiting maximum address width in bits
...
Currently, Cloud Hypervisor does not set a VIRTIO_IOMMU_F_INPUT_RANGE
feature bit for the VirtIO IOMMU device, which, according to spec[1],
means that the guest may use the whole 64-bit address space is for
IOMMU purposes:
>If the feature is not offered, virtual mappings span over the whole
>64-bit address space (start = 0, end = 0xffffffff ffffffff)
As far as I am aware, there are currently no host platforms on
the market capable of addressing the whole 64-bit address space.
For example, I am currently working with a host platform that reports
39-bit address space for IOMMU purposes:
>DMAR: Host address width 39
When running a VFIO pass-through guest on such a platform, NVIDIA
driver in guest gets DMA mapping failures when working with large data,
and this results in Cloud Hypervisor exiting with the following error:
>cloud-hypervisor: 1501.220535s: <__iommu>
>ERROR:virtio-devices/src/thread_helper.rs:53 -- Error running worker:
>HandleEvent(Failed to process request queue : ExternalMapping(Custom
>{ kind: Other, error: "failed to map memory for VFIO container, iova
>0x7fff00000000, gpa 0x24ce25000, size 0x1000: IommuDmaMap(Error(22))"
>}))
Passing "--platform iommu_address_width=39" to Cloud Hypervisor built
with this change fixes this.
[1]: https://docs.oasis-open.org/virtio/virtio/v1.3/csd01/
virtio-v1.3-csd01.html#x1-5420006
Signed-off-by: Nikolay Edigaryev <edigaryev@gmail.com >
2025-01-14 21:31:47 +00:00
Nikolay Edigaryev
74ca38f7a9
vmm: introduce platform option to limit maximum IOMMU address width
...
Signed-off-by: Nikolay Edigaryev <edigaryev@gmail.com >
2025-01-14 21:31:47 +00:00
Rob Bradford
fa686fdfc7
tests: Bump OVMF version
...
Signed-off-by: Rob Bradford <rbradford@rivosinc.com >
2025-01-14 17:53:43 +00:00
Wei Liu
c827a1c009
fuzz: build x86emul by default
...
Signed-off-by: Wei Liu <liuwe@microsoft.com >
2025-01-14 17:37:57 +00:00
dependabot[bot]
eefd7fcaaf
build: Bump linux-raw-sys from 0.4.14 to 0.4.15
...
Bumps [linux-raw-sys](https://github.com/sunfishcode/linux-raw-sys ) from 0.4.14 to 0.4.15.
- [Commits](https://github.com/sunfishcode/linux-raw-sys/compare/v0.4.14...v0.4.15 )
---
updated-dependencies:
- dependency-name: linux-raw-sys
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-01-14 16:01:22 +00:00
Rob Bradford
62303d8c33
arch: x86_64: Log the cpuid per vCPU
...
This will aid debugging issues related to CPUID.
Signed-off-by: Rob Bradford <rbradford@rivosinc.com >
2025-01-14 12:52:55 +00:00
Rob Bradford
293cf90e3d
hypervisor: Implement fmt::Display for CpuIdEntry
...
Signed-off-by: Rob Bradford <rbradford@rivosinc.com >
2025-01-14 12:52:55 +00:00