History log of /cloud-hypervisor/hypervisor/src/lib.rs (Results 1 – 25 of 70)
Revision Date Author Comments
# 960d7022 10-Feb-2025 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Enable MSHV compilation on ARM64

Along with it also enable clippy tests on MSHV aarch64 builds.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>


# 6bb33601 27-Mar-2025 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Avoid leaking KVM GIC state into common GIC state

KVM supports GICv3-ITS emulation and the current GicState is modelled
around the KVM implementation. We should refactor this to accomoda

hypervisor: Avoid leaking KVM GIC state into common GIC state

KVM supports GICv3-ITS emulation and the current GicState is modelled
around the KVM implementation. We should refactor this to accomodate
other hypervisor requirements. For example, MSHV only support GICv2M
emulation for guests for delivering MSI interrupts instead of GICv3-ITS.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>

show more ...


# 7da8ae9c 19-Mar-2025 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Fix MSHV compilation on aarch64

Use the definitions from the rust-vmm/mshv crate for various
datastructures such as StandardRegisters, RegList, VcpuInit etc.

Signed-off-by: Jinank Jain

hypervisor: Fix MSHV compilation on aarch64

Use the definitions from the rust-vmm/mshv crate for various
datastructures such as StandardRegisters, RegList, VcpuInit etc.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>

show more ...


# f5a2f847 04-Feb-2025 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Add a basic implementation of MshvVcpuState for aarch64

Currently we are just storing the StandardRegisters in the Vcpu state
which would be required for saving and restoring the ARM64 g

hypervisor: Add a basic implementation of MshvVcpuState for aarch64

Currently we are just storing the StandardRegisters in the Vcpu state
which would be required for saving and restoring the ARM64 guest on
MSHV.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>

show more ...


# 8c796e6d 10-Feb-2025 Jinank Jain <jinankjain@microsoft.com>

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>


# 630f5c1f 10-Feb-2025 Jinank Jain <jinankjain@microsoft.com>

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>


# 5b929cb2 26-Jan-2025 Jinank Jain <jinankjain@microsoft.com>

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>


# ee0b0d43 15-Jan-2025 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Implement hypervisor agnostic variant of RegList

This helps in unification of RegList across different platforms.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>


# 06148234 15-Jan-2025 Jinank Jain <jinankjain@microsoft.com>

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>


# fe24a7a2 02-Jan-2025 Wei Liu <liuwe@microsoft.com>

hypervisor: introduce an mshv_emulator feature

This will become useful when we build the fuzzing target for the
instruction emulator, because there is no need to pull in the rest of
the hypervisor c

hypervisor: introduce an mshv_emulator feature

This will become useful when we build the fuzzing target for the
instruction emulator, because there is no need to pull in the rest of
the hypervisor crate in that situation.

Signed-off-by: Wei Liu <liuwe@microsoft.com>

show more ...


# 8cd80ea3 09-Oct-2024 Ruoqing He <heruoqing@iscas.ac.cn>

hypervisor: Introduce RISC-V architecture

Introduce cpu, vm, kvm, arch module RISC-V platform support. Add macro
definitions to implement methods interacting with RISC-V registers.

Signed-off-by: R

hypervisor: Introduce RISC-V architecture

Introduce cpu, vm, kvm, arch module RISC-V platform support. Add macro
definitions to implement methods interacting with RISC-V registers.

Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn>

show more ...


# 6164aa08 18-Oct-2024 Ruoqing He <heruoqing@iscas.ac.cn>

misc: Replace div_round_up operation with div_ceil

As clippy of rust-toolchain version 1.83.0-beta.1 suggests, replace
manually implemented `div_round_up!` and the like with `div_ceil` from
std.

Si

misc: Replace div_round_up operation with div_ceil

As clippy of rust-toolchain version 1.83.0-beta.1 suggests, replace
manually implemented `div_round_up!` and the like with `div_ceil` from
std.

Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn>

show more ...


# 88a9f799 29-Sep-2024 Rob Bradford <rbradford@rivosinc.com>

misc: Adapt consistent import style formatting

Historically the Cloud Hypervisor coding style has been to ensure that
all imports are ordered and placed in a single group. Unfortunately
cargo fmt ha

misc: Adapt consistent import style formatting

Historically the Cloud Hypervisor coding style has been to ensure that
all imports are ordered and placed in a single group. Unfortunately
cargo fmt has no support for ensuring that all imports are in a single
group so if whitespace lines were added as part of the import statements
then they would only be odered correctly in the group.

By adopting "group_imports="StdExternalCrate" we can enforce a style
where imports are placed in at most three groups for std, external
crates and the crate itself. Choosing a style enforceable by the tooling
reduces the reviewer burden.

Signed-off-by: Rob Bradford <rbradford@rivosinc.com>

show more ...


# 9f08aa6d 30-Apr-2024 Nuno Das Neves <nudasnev@microsoft.com>

hypervisor: mshv: Update mshv crates to v0.3.0

And modify to code to use the updated interfaces.

Arguments for map_guest_memory, get_dirty_bitmap, vp.run(),
import_isolated_pages, modify_gpa_host_a

hypervisor: mshv: Update mshv crates to v0.3.0

And modify to code to use the updated interfaces.

Arguments for map_guest_memory, get_dirty_bitmap, vp.run(),
import_isolated_pages, modify_gpa_host_access have changed.
Update these to use the new interfaces, including new MSHV_*
definitions, and remove some redundant arguments.

Update seccomp IOCTLs to reflect interface changes.

Fix irq-related definitions naming.

Bump vfio-ioctls to support mshv v0.3.0.

Signed-off-by: Nuno Das Neves <nudasnev@microsoft.com>

show more ...


# a987c3d0 28-Aug-2024 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Define helper function for setting ARM64 KVM regs

This change is along the lines of x86 platform which defined similar
convinence macros to access the StandardRegisters.

Signed-off-by:

hypervisor: Define helper function for setting ARM64 KVM regs

This change is along the lines of x86 platform which defined similar
convinence macros to access the StandardRegisters.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>

show more ...


# 8f3bd4d9 07-Aug-2024 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Implement getter/setter for StandardRegisters

This would be used to abstract away differences in KVM/MSHV
representation of StandardRegisters.

Signed-off-by: Jinank Jain <jinankjain@mic

hypervisor: Implement getter/setter for StandardRegisters

This would be used to abstract away differences in KVM/MSHV
representation of StandardRegisters.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>

show more ...


# feb0a360 01-Aug-2024 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Implement StandardRegisters as union of KVM & MSHV

Currently we are redefining StandardRegisters instead of using the ones
coming from bindings. With this we can remove the unnecessary
c

hypervisor: Implement StandardRegisters as union of KVM & MSHV

Currently we are redefining StandardRegisters instead of using the ones
coming from bindings. With this we can remove the unnecessary
construction of global structure which contains fields from different
hypervisor dependent structs.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>

show more ...


# 4847f5c4 17-Apr-2024 Muminul Islam <muislam@microsoft.com>

hypervisor: implement clock data for MSHV

This PR implement time reference for Microsoft
Hypervisor based partition/VM.

Signed-off-by: Muminul Islam <muislam@microsoft.com>


# fdcc8539 21-Mar-2024 Jinank Jain <jinankjain@microsoft.com>

hypervisor: Don't restrict logger crate to just x86

Even aarch64 subsystem of hypervisor crate can use logging so don't
restrict it just to x86.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>


# 321d6f47 07-Feb-2024 Jinank Jain <jinankjain@microsoft.com>

hypervisor: mshv: Add new memory region flag

GPA_MAP_ADJUSTABLE suggests hypervisor to adjust GPA permissions as
required.

Signed-off-by: Jinank Jain <jinankjain@microsoft.com>


# 7bf0cc1e 31-Aug-2023 Philipp Schuster <philipp.schuster@cyberus-technology.de>

misc: Fix various spelling errors using typos

This fixes all typos found by the typos utility with respect to the config file.

Signed-off-by: Philipp Schuster <philipp.schuster@cyberus-technology.d

misc: Fix various spelling errors using typos

This fixes all typos found by the typos utility with respect to the config file.

Signed-off-by: Philipp Schuster <philipp.schuster@cyberus-technology.de>

show more ...


# 442ac905 31-Jul-2023 Philipp Schuster <philipp.schuster@cyberus-technology.de>

x86 emulator: add Mov_moffs_AX & Mov_AX_moffs (16,32,64)

Signed-off-by: Philipp Schuster <philipp.schuster@cyberus-technology.de>


# 7df80220 30-May-2023 Anatol Belski <anbelski@linux.microsoft.com>

hyperivsor: Add infrastructure to determine CPU vendor

Signed-off-by: Anatol Belski <anbelski@linux.microsoft.com>


# 1ed4898d 04-Apr-2023 Alyssa Ross <hi@alyssa.is>

hypervisor: fix building doctests

When doctests are built, the crate is built with itself as a
dependency via --extern. This causes a compiler error if using a
module with the name same as the crat

hypervisor: fix building doctests

When doctests are built, the crate is built with itself as a
dependency via --extern. This causes a compiler error if using a
module with the name same as the crate, because it's ambiguous whether
it's referring to the module, or the extern version of the crate, so
it's necessary to disambiguate when using the hypervisor module here.

Fixes running cargo test --doc --workspace.

Signed-off-by: Alyssa Ross <hi@alyssa.is>

show more ...


# 7d8f7954 11-Jan-2023 Muminul Islam <muislam@microsoft.com>

hypervisor: remove unnecessary derive of HypervisorType

There was an unnecessary change in previous PR #5077.
This is the follow-up clean up patch.

Right now there is no use case of the drive of
Eq

hypervisor: remove unnecessary derive of HypervisorType

There was an unnecessary change in previous PR #5077.
This is the follow-up clean up patch.

Right now there is no use case of the drive of
Eq and PartialEq.

Signed-off-by: Muminul Islam <muislam@microsoft.com>

show more ...


123