dependabot[bot]
a3bb459bff
build: bump thiserror from 1.0.31 to 1.0.32
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.31 to 1.0.32.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.31...1.0.32 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 15:27:08 +00:00
dependabot[bot]
bb444f3e7c
build: bump libc from 0.2.126 to 0.2.127
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.126 to 0.2.127.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.126...0.2.127 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 10:39:47 +00:00
dependabot[bot]
4052a89268
build: bump serde from 1.0.141 to 1.0.142
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.141 to 1.0.142.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.141...v1.0.142 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 09:06:58 +00:00
lizhaoxin1
bc3a276b43
arch, vmm: Expose platform uuid via SMBIOS
...
Parse and set uuid.
Signed-off-by: lizhaoxin1 <Lxiaoyouling@163.com>
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-08-04 09:20:06 +02:00
dependabot[bot]
487458c9f8
build: bump anyhow from 1.0.58 to 1.0.59
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.58 to 1.0.59.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.58...1.0.59 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-03 00:05:18 +00:00
dependabot[bot]
5f539e429a
build: bump serde from 1.0.140 to 1.0.141
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.140 to 1.0.141.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.140...v1.0.141 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 01:06:45 +00:00
Michael Zhao
7199119bb2
hypervisor: Remove Vcpu::read_mpidr()
on AArch64
...
Replaced `read_mpidr()` with `get_sys_reg()`.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-07-29 11:45:12 +01:00
Michael Zhao
ecb66b5e94
arch: Declare system registers on AArch64
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-07-29 11:45:12 +01:00
Wei Liu
2afd0e626a
tree-wide: drop unneeded dependencies
...
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-22 22:29:49 +01:00
Wei Liu
ff7773044c
tree-wide: drop some unneeded allow clauses
...
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-22 14:37:03 +01:00
dependabot[bot]
269b78ca0f
build: bump serde from 1.0.139 to 1.0.140
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.139 to 1.0.140.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.139...v1.0.140 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 13:17:32 +00:00
dependabot[bot]
b440cb7d23
build: bump vmm-sys-util from 0.9.0 to 0.10.0
...
This patch requires the vhost-user-backend crate to be bumped from 0.5.0
to 0.5.1.
Bumps [vmm-sys-util](https://github.com/rust-vmm/vmm-sys-util ) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/rust-vmm/vmm-sys-util/releases )
- [Changelog](https://github.com/rust-vmm/vmm-sys-util/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-vmm/vmm-sys-util/compare/v0.9.0...v0.10.0 )
---
updated-dependencies:
- dependency-name: vmm-sys-util
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-07-20 09:40:28 +00:00
Wei Liu
05e5106b9b
hypervisor x86: provide a generic LapicState structure
...
This requires making get/set_lapic_reg part of the type.
For the moment we cannot provide a default variant for the new type,
because picking one will be wrong for the other hypervisor, so I just
drop the test cases that requires LapicState::default().
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-19 09:38:38 +01:00
Wei Liu
6a8c0fc887
hypervisor: provide a generic FpuState structure
...
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-18 22:15:30 +01:00
Wei Liu
08135fa085
hypervisor: provide a generic CpudIdEntry structure
...
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-18 22:15:30 +01:00
Wei Liu
45fbf840db
hypervisor, vmm: move away from CpuId type
...
CpuId is an alias type for the flexible array structure type over
CpuIdEntry. The type itself and the type of the element in the array
portion are tied to the underlying hypervisor.
Switch to using CpuIdEntry slice or vector directly. The construction of
CpuId type is left to hypervisors.
This allows us to decouple CpuIdEntry from hypervisors more easily.
No functional change intended.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-18 22:15:30 +01:00
Wei Liu
f1ab86fecb
hypervisor: x86: provide a generic SpecialRegisters structure
...
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-15 10:21:43 +01:00
Wei Liu
75797827d5
hypervisor: x86: provide a generic SegmentRegister structure
...
And drop SegmentRegisterOps since it is no longer required.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-15 10:21:43 +01:00
Wei Liu
8b7781e267
hypervisor: x86: provide a generic StandardRegisters structure
...
We only need to do this for x86 since MSHV does not have aarch64 support
yet. This reduces unnecessary code churn.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-15 10:21:43 +01:00
dependabot[bot]
a99c33ccfa
build: bump serde from 1.0.138 to 1.0.139
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.138 to 1.0.139.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.138...v1.0.139 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-11 23:54:20 +00:00
Wei Liu
84bbaf06d1
hypervisor: turn boot_msr_entries into a trait method
...
This allows dispatching to either KVM or MSHV automatically.
No functional change.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-07-08 16:49:58 +01:00
dependabot[bot]
4f611c8654
build: bump serde from 1.0.137 to 1.0.138
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.137 to 1.0.138.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.137...v1.0.138 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-06 00:56:48 +00:00
Rob Bradford
2716bc3311
build: Fix beta clippy issue (derive_partial_eq_without_eq)
...
warning: you are deriving `PartialEq` and can implement `Eq`
--> vmm/src/serial_manager.rs:59:30
|
59 | #[derive(Debug, Clone, Copy, PartialEq)]
| ^^^^^^^^^ help: consider deriving `Eq` as well: `PartialEq, Eq`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derive_partial_eq_without_eq
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-06-30 20:50:45 +01:00
dependabot[bot]
eb55d0809e
build: bump anyhow from 1.0.57 to 1.0.58
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.57 to 1.0.58.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.57...1.0.58 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 00:46:25 +00:00
Michael Zhao
a7a15d56dd
aarch64: Move setup_regs
to hypervisor
...
`setup_regs` of AArch64 calls KVM sepecific code. Now move it to
`hypervisor` crate.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-06-06 11:07:46 +01:00
Michael Zhao
957d3a7443
aarch64: Simplify GIC related structs definition
...
Combined the `GicDevice` struct in `arch` crate and the `Gic` struct in
`devices` crate.
After moving the KVM specific code for GIC in `arch`, a very thin wapper
layer `GicDevice` was left in `arch` crate. It is easy to combine it
with the `Gic` in `devices` crate.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-06-06 10:17:26 +08:00
Michael Zhao
04949755c0
arch: Switch to new GIC interface
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-06-06 10:17:26 +08:00
Michael Zhao
b8dbb26647
hypervisor: Refactor save_pending_tables
of Vgic
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-06-06 10:17:26 +08:00
Michael Zhao
0fd6521759
aarch64: Avoid depending on layout
in GIC code
...
Removing the dependency on `layout` helps moving GIC code into
`hypervisor` crate.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-05-27 10:57:50 +08:00
Michael Zhao
4a2d3cb4f5
aarch64: Refactor KvmGicV3Its::new()
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-05-27 10:57:50 +08:00
Michael Zhao
3fe20cc09a
aarch64: Remove GicDevice
trait
...
`GicDevice` trait was defined for the common part of GicV3 and ITS.
Now that the standalone GicV3 do not exist, `GicDevice` is not needed.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-05-27 10:57:50 +08:00
Michael Zhao
fd581b1afb
aarch64: Combine the code of GicV3 and GicV3Its
...
Why combine:
- GicV3 is not required alone
- GicV3 and GicV3Its has separate snapshot/pause code. But the code of
GicV3 was never used.
- Reduce the code complexity of GIC related traits and structs.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-05-27 10:57:50 +08:00
Michael Zhao
1e732bf532
aarch64: Remove versionize
& versionize_derive
...
Remove the not-mandatory dependencies in gic source code.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-05-27 10:57:50 +08:00
dependabot[bot]
0e16ffbcff
build: bump libc from 0.2.125 to 0.2.126
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.125 to 0.2.126.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.125...0.2.126 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 07:14:37 +00:00
Maksym Pavlenko
3a0429c998
cargo: Clean up serde dependencies
...
There is no need to include serde_derive separately,
as it can be specified as serde feature instead.
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-05-18 08:21:19 +02:00
dependabot[bot]
7db7410920
build: bump virtio-queue from 0.2.0 to 0.3.0
...
Bumps [virtio-queue](https://github.com/rust-vmm/vm-virtio ) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/rust-vmm/vm-virtio/releases )
- [Commits](https://github.com/rust-vmm/vm-virtio/compare/virtio-queue-v0.2.0...virtio-queue-v0.3.0 )
Also relies on main branch from vhost-user-backend since it moved to
virtio-queue 0.3.0 as well, and without this change it wouldn't compile.
---
updated-dependencies:
- dependency-name: virtio-queue
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-05-16 11:47:20 +02:00
Rob Bradford
12f11b5619
arch: x86_64: Remove glob import from hypervisor regs module
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-05-13 15:39:22 +02:00
Rob Bradford
2caf5e3b2b
arch: Use more descriptive name for hypervisor::Vcpu than fd
...
This variable name is residual from when these functions acted directly
on the vCPU fd rather than the hypervisor wrapper.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-05-13 15:39:22 +02:00
Rob Bradford
cd0df05808
vmm, arch: CpuId is x86_64 specific so import from the x86_64 module
...
It will be removed as a top-level export from the hypervisor crate.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-05-13 15:39:22 +02:00
dependabot[bot]
30e06eaaba
build: bump log from 0.4.16 to 0.4.17
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.16 to 0.4.17.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/commits/0.4.17 )
---
updated-dependencies:
- dependency-name: log
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-03 01:00:20 +00:00
dependabot[bot]
960a9e0ff7
build: bump libc from 0.2.124 to 0.2.125
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.124 to 0.2.125.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.124...0.2.125 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 18:15:25 +00:00
dependabot[bot]
3277c27e0d
build: bump serde_derive from 1.0.136 to 1.0.137
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.136 to 1.0.137.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.136...v1.0.137 )
---
updated-dependencies:
- dependency-name: serde_derive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 17:27:47 +00:00
dependabot[bot]
691d9b16db
build: bump serde from 1.0.136 to 1.0.137
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.136 to 1.0.137.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.136...v1.0.137 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 15:52:41 +00:00
dependabot[bot]
b60e6f7cb1
build: bump thiserror from 1.0.30 to 1.0.31
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.30 to 1.0.31.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.30...1.0.31 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 09:53:42 +00:00
Rob Bradford
47529796d0
arch: Improve arch::Error
...
Remove unused error enum entries, improve wording and derive
thiserror::Error.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-04-22 17:46:41 +01:00
dependabot[bot]
3c8e280bf1
build: bump anyhow from 1.0.56 to 1.0.57
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.56 to 1.0.57.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.56...1.0.57 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-22 00:11:48 +00:00
Rob Bradford
e972eb7c74
arch, vmm: Expose platform serial_number via SMBIOS
...
Fixes : #4002
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-04-21 17:17:08 +02:00
dependabot[bot]
de1af55e22
build: bump libc from 0.2.123 to 0.2.124
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.123 to 0.2.124.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.123...0.2.124 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-20 10:43:52 +00:00
dependabot[bot]
f8201bc151
build: bump libc from 0.2.122 to 0.2.123
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.122 to 0.2.123.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.122...0.2.123 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-13 10:13:32 +01:00
Michael Zhao
d1b2a3fca9
aarch64: Add a memory-simulated flash for UEFI
...
EDK2 execution requires a flash device at address 0.
The new added device is not a fully functional flash. It doesn't
implement any spec of a flash device. Instead, a piece of memory is used
to simulate the flash simply.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-11 09:51:34 +01:00
Michael Zhao
6e562eb1e7
aarch64: Return the hidden RAM for UEFI
...
Size of `memory` node in FDT was reduced by 4MiB. Now it is returned.
In memory regions, a `Ram` region of 4MiB was created at address 0. Now
it is removed.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-11 09:51:34 +01:00
Wei Liu
7d7bfb2034
build: migrate to Rust 2021 edition
...
Rust 2021 edition has a few improvements over the 2018 edition. Migrate
the project to 2021 edition by following recommended migration steps.
Luckily, the code itself doesn't require fixing.
Bump MSRV to 1.56 as it is required by the 2021 edition. Also fix the
clap build dependency to make Cloud Hypervisor build again.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-04-11 09:51:12 +01:00
Michael Zhao
298a5580a9
aarch64: Remove unnecessary function definitions
...
This is a refactoring commit to simplify source code.
Removed some functions that only return a layout const.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-08 11:08:43 -07:00
Michael Zhao
656425a328
aarch64: Align the data types in layout
...
Some addresses defined in `layout.rs` were of type `GuestAddress`, and
are `u64`. Now align the types of all the `*_START` definitions to
`GuestAddress`.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-08 11:08:43 -07:00
dependabot[bot]
fe87812b34
build: bump libc from 0.2.121 to 0.2.122
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.121 to 0.2.122.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.121...0.2.122 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-07 01:12:12 +00:00
Michael Zhao
9069cc889f
aarch64: Update NUMA node in FDT for memory hole
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-05 11:04:52 +08:00
Michael Zhao
96ed1327f8
aarch64: Update FDT for the new memory layout
...
If the RAM is across the hole, 2 `memory` nodes are needed in FDT.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-05 11:04:52 +08:00
Michael Zhao
d60d6713fa
aarch64: Unit test for new memory layout
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-05 11:04:52 +08:00
Michael Zhao
848d88c122
aarch64: Reserve a hole in 32-bit space
...
The reserved space is for devices.
Some devices (like TPM) require arbitrary addresses close to 4GiB.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-05 11:04:52 +08:00
Michael Zhao
a3dbc3b415
aarch64: Change RAM_START
type GuestAddress
...
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-05 11:04:52 +08:00
Michael Zhao
ef9f37cd5f
aarch64: Rename RAM_64BIT_START
in layout
...
`RAM_64BIT_START` was set to 1 GiB, not a real 64-bit address. Now
rename it `RAM_START` to avoid confusion.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-04-05 11:04:52 +08:00
Sebastien Boeuf
dae77d8d43
arch: x86_64: tdx: Update EFI HOB attribute
...
Based on latest QEMU patches from branch tdx-qemu-2022.03.29-v7.0.0-rc1
we don't need EFI_RESOURCE_ATTRIBUTE_ENCRYPTED as part of the attributes
we must enable with EFI_RESOURCE_SYSTEM_MEMORY and
EFI_RESOURCE_MEMORY_RESERVED resource types.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-04-01 18:24:32 +01:00
Sebastien Boeuf
db06c31305
arch: x86_64: Patch CPUID based on TDX capabilities
...
Based on the XFAM masks retrieved from the TDX capabilities, the CPUID
must be patched.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-03-30 14:57:23 +01:00
Rob Bradford
7c0cf8cc23
arch, devices, vmm: Remove "acpi" feature gate
...
Compile this feature in by default as it's well supported on both
aarch64 and x86_64 and we only officially support using it (no non-acpi
binaries are available.)
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-28 09:18:29 -07:00
dependabot[bot]
86a54a2658
build: bump log from 0.4.14 to 0.4.16
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.14 to 0.4.16.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/commits )
---
updated-dependencies:
- dependency-name: log
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-25 18:26:18 +00:00
dependabot[bot]
f05a408a8d
build: bump libc from 0.2.120 to 0.2.121
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.120 to 0.2.121.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.120...0.2.121 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-20 12:25:30 +00:00
dependabot[bot]
9c3f8cf2f5
build: bump libc from 0.2.119 to 0.2.120
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.119 to 0.2.120.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.119...0.2.120 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-15 00:21:58 +00:00
Rob Bradford
64b32841a3
arch: x86_64: Write EBDA address to BIOS data area
...
This allows ACPICA to find the EBDA and load the ACPI tables when
scanning for them.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-09 15:47:01 +01:00
dependabot[bot]
f48aa66ccb
build: bump anyhow from 1.0.55 to 1.0.56
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.55 to 1.0.56.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.55...1.0.56 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-08 00:48:22 +00:00
Wei Liu
4cf22e4ec7
arch: do not hardcode MMIO region length in MmioDeviceInfo
...
Add a field for its length and fix up users.
Things work just because all hardcoded values agree with each other.
This is prone to breakage.
No functional change.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-03-04 15:21:48 +08:00
dependabot[bot]
81d53c5711
build: bump libc from 0.2.118 to 0.2.119
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.118 to 0.2.119.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.118...0.2.119 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 09:55:13 +00:00
Michael Zhao
bf6920f774
aarch64: Optimize cpu-map
creating code in FDT
...
The logic of determining VCPU index in creating `cpu-map` node of FDT
can be optimized.
The code is invoked when VCPU topology is specified.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-02-22 09:21:00 +08:00
Michael Zhao
28d6bff340
aarch64: Simplify VCPU topology coding in FDT
...
In Flattened Device Tree (FDT) on AArch64, the VCPU topology is
represented by `cpu-map` node. The source code of creating the node
can be simplified.
Signed-off-by: Michael Zhao <michael.zhao@arm.com>
2022-02-22 09:21:00 +08:00
dependabot[bot]
97f5b68424
build: bump anyhow from 1.0.53 to 1.0.55
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.53 to 1.0.55.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.53...1.0.55 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 23:37:33 +00:00
dependabot[bot]
07d78e6a12
build: bump libc from 0.2.117 to 0.2.118
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.117 to 0.2.118.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.117...0.2.118 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-16 09:28:41 +00:00
Sebastien Boeuf
2f0073544a
arch: x86_64: tdx: Add a payload helper to TdHob
...
Adding a new method to the TdHob structure so that we can easily insert
a HOB_PAYLOAD_INFO_TABLE into the HOB.
Signed-off-by: Jiaqi Gao <jiaqi.gao@intel.com>
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-02-04 13:57:56 +01:00
Sebastien Boeuf
2198baa547
arch: x86_64: tdx: Extend TDVF section types
...
Based on the recent updates of the TDVF specification introducing new
types of TDVF sections, let's extend the enum in our code.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-02-04 13:57:56 +01:00
dependabot[bot]
8a066466ed
build: bump libc from 0.2.116 to 0.2.117
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.116 to 0.2.117.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.116...0.2.117 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-02 23:46:18 +00:00
dependabot[bot]
400c28fa58
build: bump libc from 0.2.115 to 0.2.116
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.115 to 0.2.116.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.115...0.2.116 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-29 00:29:33 +00:00
dependabot[bot]
6cbe08fa40
build: bump libc from 0.2.114 to 0.2.115
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.114 to 0.2.115.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.114...0.2.115 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-28 00:10:41 +00:00
dependabot[bot]
4253192ffc
build: bump serde_derive from 1.0.135 to 1.0.136
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.135 to 1.0.136.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.135...v1.0.136 )
---
updated-dependencies:
- dependency-name: serde_derive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-26 16:14:16 +00:00
dependabot[bot]
eee10b4b01
build: bump serde from 1.0.135 to 1.0.136
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.135 to 1.0.136.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.135...v1.0.136 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-26 15:12:54 +00:00
dependabot[bot]
816bf3abf0
build: bump libc from 0.2.113 to 0.2.114
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.113 to 0.2.114.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.113...0.2.114 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-26 13:06:50 +00:00
dependabot[bot]
d3081ff50c
build: bump serde from 1.0.134 to 1.0.135
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.134 to 1.0.135.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.134...v1.0.135 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-25 06:38:45 +00:00
dependabot[bot]
ef9a388f87
build: bump serde_derive from 1.0.134 to 1.0.135
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.134 to 1.0.135.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.134...v1.0.135 )
---
updated-dependencies:
- dependency-name: serde_derive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-25 05:35:35 +00:00
dependabot[bot]
5d80084868
build: bump anyhow from 1.0.52 to 1.0.53
...
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.52 to 1.0.53.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.52...1.0.53 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-25 04:20:53 +00:00
dependabot[bot]
8d5b4f9707
build: bump serde from 1.0.133 to 1.0.134
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.133 to 1.0.134.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.133...v1.0.134 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-22 01:46:08 +00:00
dependabot[bot]
25ce38bee1
build: bump serde_derive from 1.0.133 to 1.0.134
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.133 to 1.0.134.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.133...v1.0.134 )
---
updated-dependencies:
- dependency-name: serde_derive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-22 00:26:15 +00:00
Jianyong Wu
81c5855184
fdt: add PMU node to fdt
...
PMU node in fdt stores some important info like irq number.
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
2022-01-21 17:59:36 +08:00
Jianyong Wu
53060874a7
vmm: Init PMU for vcpu when create vm
...
PMU is needed in guest for performance profiling, thus should be
enabled.
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
2022-01-21 17:59:36 +08:00
dependabot[bot]
1f5e2a38a7
build: bump libc from 0.2.112 to 0.2.113
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.112 to 0.2.113.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.112...0.2.113 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-21 00:44:12 +00:00
Sebastien Boeuf
2acb50f752
arch: x86_64: tdx: Add ACPI table helper to TdHob
...
Adding a new method to the TdHob structure so that we can easily insert
a ACPI_TABLE_HOB into the HOB.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-01-20 16:50:55 +00:00
Sebastien Boeuf
4fda4ad6c9
arch, vmm: tdx: Remove TD_VMM_DATA mechanism
...
It's been decided the ACPI tables will be passed to the firmware in a
different way, rather than using TD_VMM_DATA. Since TD_VMM_DATA was
introduced for this purpose, there's no reason to keep it in our
codebase.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-01-20 16:50:55 +00:00
Wei Liu
c9983ff4ad
arch: drop allow(clippy::transmute_ptr_to_ptr)
...
It is not needed.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-01-18 17:23:27 -08:00
Wei Liu
714b529bb2
arch: aarch64: drop unnecessary static lifetime
...
This also has the side effect for making access_redists_aux function
strictly more useful.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-01-18 17:23:27 -08:00
Wei Liu
99bcebad74
arch: aarch64: do not unnecessarily add mut keyword
...
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-01-18 17:23:27 -08:00
Wei Liu
8155be2e6b
arch: aarch64: vm_memory is not required when configuring vcpu
...
Drop the unused parameter throughout the code base.
Also take the chance to drop a needless clone.
No functional change intended.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-01-14 16:03:12 -08:00
Rob Bradford
ade8d71264
arch: aarch64: Fix beta clippy issue
...
error: unneeded late initalization
Error: --> arch/src/aarch64/gic/gicv3_its.rs:127:9
|
127 | let attr: u64;
| ^^^^^^^^^^^^^^
|
= note: `-D clippy::needless-late-init` implied by `-D warnings`
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init
help: declare `attr` here
|
128 | let attr: u64 = if save {
| +++++++++++++++
help: remove the assignments from the branches
|
129 ~ u64::from(kvm_bindings::KVM_DEV_ARM_ITS_SAVE_TABLES)
130 | } else {
131 ~ u64::from(kvm_bindings::KVM_DEV_ARM_ITS_RESTORE_TABLES)
|
help: add a semicolon after the `if` expression
|
132 | };
| +
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-01-14 14:33:18 +00:00
Rob Bradford
3baebc1af0
arch: x86_64: Fix clippy (needless_late_init) issue
...
warning: unneeded late initalization
--> arch/src/x86_64/mod.rs:318:17
|
318 | let reg_val: u32;
| ^^^^^^^^^^^^^^^^^
|
= note: `#[warn(clippy::needless_late_init)]` on by default
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init
help: declare `reg_val` here
|
319 | let reg_val: u32 = match reg {
| ++++++++++++++++++
help: remove the assignments from the `match` arms
|
321 ~ entry.eax
322 | }
323 | CpuidReg::EBX => {
324 ~ entry.ebx
325 | }
326 | CpuidReg::ECX => {
...
help: add a semicolon after the `match` expression
|
332 | };
| +
warning: unneeded late initalization
--> arch/src/x86_64/mod.rs:525:13
|
525 | let entry_compatible;
| ^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init
help: declare `entry_compatible` here
|
526 | let entry_compatible = match entry.compatible_check {
| ++++++++++++++++++++++
help: remove the assignments from the `match` arms
|
530 ~ src_vm_feature_bits_only == 0
531 | }
532 | CpuidCompatibleCheck::Equal => {
533 ~ src_vm_feature == dest_vm_feature
534 | }
535 | CpuidCompatibleCheck::NumNotGreater => {
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-01-07 08:16:26 -08:00
dependabot[bot]
cf2abd35d0
build: bump serde_derive from 1.0.132 to 1.0.133
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.132 to 1.0.133.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.132...v1.0.133 )
---
updated-dependencies:
- dependency-name: serde_derive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 03:58:23 +00:00