History log of /cloud-hypervisor/hypervisor/src/ (Results 201 – 225 of 516)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
239f422222-Aug-2023 Rob Bradford <rbradford@rivosinc.com>

hypervisor: x86: emulator: Remove unncessary mut from reference

warning: this argument is a mutable reference, but not used mutably
--> hypervisor/src/arch/x86/emulator/instructions/mod.rs:22:15

hypervisor: x86: emulator: Remove unncessary mut from reference

warning: this argument is a mutable reference, but not used mutably
--> hypervisor/src/arch/x86/emulator/instructions/mod.rs:22:15
|
22 | platform: &mut dyn PlatformEmulator<CpuState = T>,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider changing to: `&dyn PlatformEmulator<CpuState = T>`
|
= note: this is cfg-gated and may require further changes
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_pass_by_ref_mut

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

show more ...

dbe67fca11-Aug-2023 Wei Liu <liuwe@microsoft.com>

hypervisor: mshv: handle APIC EOI message

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


/cloud-hypervisor/.github/workflows/release.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/aarch64/fdt.rs
/cloud-hypervisor/block/Cargo.toml
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/devices/src/acpi.rs
/cloud-hypervisor/devices/src/gic.rs
/cloud-hypervisor/devices/src/ioapic.rs
/cloud-hypervisor/devices/src/legacy/cmos.rs
/cloud-hypervisor/devices/src/legacy/gpio_pl061.rs
/cloud-hypervisor/devices/src/legacy/i8042.rs
/cloud-hypervisor/devices/src/legacy/rtc_pl031.rs
/cloud-hypervisor/devices/src/legacy/serial.rs
/cloud-hypervisor/devices/src/legacy/uart_pl011.rs
/cloud-hypervisor/event_monitor/Cargo.toml
/cloud-hypervisor/event_monitor/src/lib.rs
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/fuzz/fuzz_targets/cmos.rs
/cloud-hypervisor/fuzz/fuzz_targets/serial.rs
/cloud-hypervisor/hypervisor/Cargo.toml
mshv/mod.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/pci/src/msi.rs
/cloud-hypervisor/pci/src/msix.rs
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/rate_limiter/Cargo.toml
/cloud-hypervisor/release-notes.md
/cloud-hypervisor/resources/Dockerfile
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_live_migration.sh
/cloud-hypervisor/scripts/run_integration_tests_rate_limiter.sh
/cloud-hypervisor/scripts/run_integration_tests_sgx.sh
/cloud-hypervisor/scripts/run_integration_tests_vfio.sh
/cloud-hypervisor/scripts/run_integration_tests_windows_x86_64.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/run_metrics.sh
/cloud-hypervisor/scripts/run_unit_tests.sh
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/test_data/cloud-init/ubuntu/ci/user-data
/cloud-hypervisor/test_infra/Cargo.toml
/cloud-hypervisor/tracer/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_net/Cargo.toml
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/balloon.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vm-device/Cargo.toml
/cloud-hypervisor/vm-device/src/interrupt/mod.rs
/cloud-hypervisor/vm-migration/Cargo.toml
/cloud-hypervisor/vm-migration/src/lib.rs
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/device_manager.rs
/cloud-hypervisor/vmm/src/interrupt.rs
/cloud-hypervisor/vmm/src/lib.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
442ac90531-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>


/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/src/x86_64/mod.rs
/cloud-hypervisor/block/Cargo.toml
/cloud-hypervisor/block/src/async_io.rs
/cloud-hypervisor/block/src/fixed_vhd.rs
/cloud-hypervisor/block/src/fixed_vhd_async.rs
/cloud-hypervisor/block/src/fixed_vhd_sync.rs
/cloud-hypervisor/block/src/lib.rs
/cloud-hypervisor/block/src/qcow/mod.rs
/cloud-hypervisor/block/src/qcow/qcow_raw_file.rs
/cloud-hypervisor/block/src/qcow/raw_file.rs
/cloud-hypervisor/block/src/qcow/refcount.rs
/cloud-hypervisor/block/src/qcow/vec_cache.rs
/cloud-hypervisor/block/src/qcow_sync.rs
/cloud-hypervisor/block/src/raw_async.rs
/cloud-hypervisor/block/src/raw_sync.rs
/cloud-hypervisor/block/src/vhd.rs
/cloud-hypervisor/block/src/vhdx/mod.rs
/cloud-hypervisor/block/src/vhdx/vhdx_bat.rs
/cloud-hypervisor/block/src/vhdx/vhdx_header.rs
/cloud-hypervisor/block/src/vhdx/vhdx_io.rs
/cloud-hypervisor/block/src/vhdx/vhdx_metadata.rs
/cloud-hypervisor/block/src/vhdx_sync.rs
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/fuzz/fuzz_targets/block.rs
/cloud-hypervisor/fuzz/fuzz_targets/qcow.rs
/cloud-hypervisor/fuzz/fuzz_targets/vhdx.rs
arch/x86/emulator/instructions/mov.rs
arch/x86/emulator/mod.rs
lib.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_block/src/lib.rs
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/blk.rs
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/acpi.rs
/cloud-hypervisor/vmm/src/config.rs
/cloud-hypervisor/vmm/src/coredump.rs
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/device_manager.rs
/cloud-hypervisor/vmm/src/lib.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
/cloud-hypervisor/vmm/src/vm_config.rs
8ab2d5e512-Jul-2023 Yu Li <liyu.yukiteru@bytedance.com>

build: Fix beta clippy issue: private item shadows public glob re-export

error: private item shadows public glob re-export
Error: --> hypervisor/src/mshv/mod.rs:42:27
|
42 | CpuIdEntry, Fpu

build: Fix beta clippy issue: private item shadows public glob re-export

error: private item shadows public glob re-export
Error: --> hypervisor/src/mshv/mod.rs:42:27
|
42 | CpuIdEntry, FpuState, LapicState, MsrEntry, SpecialRegisters, StandardRegisters,
| ^^^^^^^^^^
|
note: the name `LapicState` in the type namespace is supposed to be publicly re-exported here
--> hypervisor/src/mshv/mod.rs:16:9
|
16 | pub use mshv_bindings::*;
| ^^^^^^^^^^^^^^^^
note: but the private item here shadows it
--> hypervisor/src/mshv/mod.rs:42:27
|
42 | CpuIdEntry, FpuState, LapicState, MsrEntry, SpecialRegisters, StandardRegisters,
| ^^^^^^^^^^
= note: `-D hidden-glob-reexports` implied by `-D warnings`

Signed-off-by: Yu Li <liyu.yukiteru@bytedance.com>

show more ...

b6d0098330-Jun-2023 Christian Blichmann <cblichmann@google.com>

hypervisor: x86: Emulator is only needed on `mshv`, not `kvm`

On x86-64, when the underlying hypervisor platform is KVM, no
instruction emulator is necessary. KVM handles instruction boundaries
inte

hypervisor: x86: Emulator is only needed on `mshv`, not `kvm`

On x86-64, when the underlying hypervisor platform is KVM, no
instruction emulator is necessary. KVM handles instruction boundaries
internally.

This change allows to skip the iced-x86 dependency on KVM, improving
build times, prunes the dependency graph and reduces network traffic
during the initial build.

For Hyper-V, the emulator is still necessary on x86-64, so nothing
changes there.

Signed-off-by: Christian Blichmann <cblichmann@google.com>

show more ...


/cloud-hypervisor/.github/workflows/build.yaml
/cloud-hypervisor/.github/workflows/hadolint.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/aarch64/fdt.rs
/cloud-hypervisor/arch/src/aarch64/mod.rs
/cloud-hypervisor/arch/src/x86_64/mod.rs
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/devices/src/acpi.rs
/cloud-hypervisor/docs/api.md
/cloud-hypervisor/docs/custom-image.md
/cloud-hypervisor/event_monitor/Cargo.toml
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/hypervisor/Cargo.toml
arch/x86/mod.rs
/cloud-hypervisor/net_gen/src/if_tun.rs
/cloud-hypervisor/net_gen/src/iff.rs
/cloud-hypervisor/net_gen/src/lib.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/pci/src/configuration.rs
/cloud-hypervisor/pci/src/msix.rs
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/performance-metrics/Cargo.toml
/cloud-hypervisor/release-notes.md
/cloud-hypervisor/resources/Dockerfile
/cloud-hypervisor/resources/linux-config-aarch64
/cloud-hypervisor/resources/linux-config-x86_64
/cloud-hypervisor/scripts/create-cloud-init.sh
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_vfio.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/sha1sums-x86_64
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/test_data/cloud-init/ubuntu/ci/meta-data
/cloud-hypervisor/test_data/cloud-init/ubuntu/ci/network-config
/cloud-hypervisor/test_data/cloud-init/ubuntu/ci/user-data
/cloud-hypervisor/test_data/cloud-init/ubuntu/local/meta-data
/cloud-hypervisor/test_data/cloud-init/ubuntu/local/network-config
/cloud-hypervisor/test_data/cloud-init/ubuntu/local/user-data
/cloud-hypervisor/test_infra/Cargo.toml
/cloud-hypervisor/test_infra/src/lib.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/tracer/Cargo.toml
/cloud-hypervisor/vhdx/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_net/Cargo.toml
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/seccomp_filters.rs
/cloud-hypervisor/virtio-devices/src/transport/pci_device.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vm-allocator/src/gsi.rs
/cloud-hypervisor/vm-allocator/src/lib.rs
/cloud-hypervisor/vm-allocator/src/page_size.rs
/cloud-hypervisor/vm-allocator/src/system.rs
/cloud-hypervisor/vm-device/Cargo.toml
/cloud-hypervisor/vm-migration/Cargo.toml
/cloud-hypervisor/vm-migration/src/lib.rs
/cloud-hypervisor/vm-virtio/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/api/dbus/mod.rs
/cloud-hypervisor/vmm/src/api/http/http_endpoint.rs
/cloud-hypervisor/vmm/src/api/http/mod.rs
/cloud-hypervisor/vmm/src/api/mod.rs
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/device_manager.rs
/cloud-hypervisor/vmm/src/lib.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/pci_segment.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
7df8022030-May-2023 Anatol Belski <anbelski@linux.microsoft.com>

hyperivsor: Add infrastructure to determine CPU vendor

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

35ecfb6e26-Mar-2023 Anatol Belski <anbelski@linux.microsoft.com>

hypervisor: mshv: Implement set_cpuid2 call

Passing the CPUID leafs with the topology is integrated into the common
mechanism of setting and patching CPUID in Cloud Hypervisor. All the
CPUID values

hypervisor: mshv: Implement set_cpuid2 call

Passing the CPUID leafs with the topology is integrated into the common
mechanism of setting and patching CPUID in Cloud Hypervisor. All the
CPUID values will be passed to the hypervisor through the register
intercept call.

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

show more ...

ceb8151711-Apr-2023 Rob Bradford <rbradford@rivosinc.com>

hypervisor, vmm: Limit max number of vCPUs to hypervisor maximum

On KVM this is provided by an ioctl, on MSHV this is constant. Although
there is a HV_MAXIMUM_PROCESSORS constant the MSHV ioctl API

hypervisor, vmm: Limit max number of vCPUs to hypervisor maximum

On KVM this is provided by an ioctl, on MSHV this is constant. Although
there is a HV_MAXIMUM_PROCESSORS constant the MSHV ioctl API is limited
to u8.

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

show more ...

6379074218-Apr-2023 Rafael Mendonca <rafaelmendsr@gmail.com>

misc: Remove unnecessary clippy directives

Clippy passes fine without these.

Signed-off-by: Rafael Mendonca <rafaelmendsr@gmail.com>

9b72430310-Apr-2023 Alyssa Ross <hi@alyssa.is>

vmm: only use KVM_ARM_VCPU_PMU_V3 if available

Having PMU in guests isn't critical, and not all hardware supports
it (e.g. Apple Silicon).

CpuManager::init_pmu already has a fallback for if PMU is

vmm: only use KVM_ARM_VCPU_PMU_V3 if available

Having PMU in guests isn't critical, and not all hardware supports
it (e.g. Apple Silicon).

CpuManager::init_pmu already has a fallback for if PMU is not
supported by the VCPU, but we weren't getting that far, because we
would always try to initialise the VCPU with KVM_ARM_VCPU_PMU_V3, and
then bail when it returned with EINVAL.

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

show more ...

3096f1d407-Apr-2023 Muminul Islam <muislam@microsoft.com>

hypervisor: Fix few register names on MSHV

Recently generated mshv-bindings has most of the registers
renamed. This patch renames some of the MSHV registers.

Signed-off-by: Muminul Islam <muislam@m

hypervisor: Fix few register names on MSHV

Recently generated mshv-bindings has most of the registers
renamed. This patch renames some of the MSHV registers.

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

show more ...

755cabea04-Apr-2023 Alyssa Ross <hi@alyssa.is>

hypervisor: use proper doc tests for examples

It seems like these examples were always intended to be doctests,
since there are lines marked with "#" so that they are excluded from
the generated doc

hypervisor: use proper doc tests for examples

It seems like these examples were always intended to be doctests,
since there are lines marked with "#" so that they are excluded from
the generated documentation, but they were not recognised as doc tests
because they were not formatted correctly.

The code needed some adjustments so that it would actually compile and
run as doctests.

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

show more ...

1ed4898d04-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 ...


/cloud-hypervisor/.github/workflows/docker-image.yaml
/cloud-hypervisor/.github/workflows/release.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/aarch64/regs.rs
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/devices/src/acpi.rs
/cloud-hypervisor/docs/api.md
/cloud-hypervisor/docs/memory.md
/cloud-hypervisor/event_monitor/Cargo.toml
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/hypervisor/Cargo.toml
lib.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/performance-metrics/Cargo.toml
/cloud-hypervisor/performance-metrics/src/main.rs
/cloud-hypervisor/release-notes.md
/cloud-hypervisor/resources/Dockerfile
/cloud-hypervisor/resources/linux-config-aarch64
/cloud-hypervisor/resources/linux-config-x86_64
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_live_migration.sh
/cloud-hypervisor/scripts/run_integration_tests_rate_limiter.sh
/cloud-hypervisor/scripts/run_integration_tests_vfio.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/run_metrics.sh
/cloud-hypervisor/scripts/test-util.sh
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/test_infra/Cargo.toml
/cloud-hypervisor/test_infra/src/lib.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/tracer/Cargo.toml
/cloud-hypervisor/vhdx/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/vhost_user/fs.rs
/cloud-hypervisor/virtio-devices/src/vsock/csm/connection.rs
/cloud-hypervisor/virtio-devices/src/vsock/csm/mod.rs
/cloud-hypervisor/virtio-devices/src/vsock/packet.rs
/cloud-hypervisor/virtio-devices/src/vsock/unix/mod.rs
/cloud-hypervisor/virtio-devices/src/vsock/unix/muxer.rs
/cloud-hypervisor/virtio-devices/src/vsock/unix/muxer_killq.rs
/cloud-hypervisor/virtio-devices/src/vsock/unix/muxer_rxq.rs
/cloud-hypervisor/vm-device/Cargo.toml
/cloud-hypervisor/vm-migration/Cargo.toml
/cloud-hypervisor/vm-migration/src/lib.rs
/cloud-hypervisor/vm-virtio/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/acpi.rs
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/device_manager.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/pci_segment.rs
/cloud-hypervisor/vmm/src/vm.rs
de3ca97014-Feb-2023 Wei Liu <liuwe@microsoft.com>

hypervisor: rename get_cpuid to get_supported_cpuid

To better reflect its nature and avoid confusion with get_cpuid2.

No functional change.

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


/cloud-hypervisor/.github/workflows/quality.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/x86_64/mod.rs
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/block_util/src/lib.rs
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/docs/hotplug.md
/cloud-hypervisor/event_monitor/Cargo.toml
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/hypervisor/Cargo.toml
hypervisor.rs
kvm/mod.rs
mshv/mod.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/net_util/src/ctrl_queue.rs
/cloud-hypervisor/net_util/src/lib.rs
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/performance-metrics/Cargo.toml
/cloud-hypervisor/scripts/ch-trace-visualiser.py
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_vfio.sh
/cloud-hypervisor/scripts/run_integration_tests_windows_x86_64.sh
/cloud-hypervisor/test_infra/Cargo.toml
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/tpm/Cargo.toml
/cloud-hypervisor/tpm/src/emulator.rs
/cloud-hypervisor/tracer/Cargo.toml
/cloud-hypervisor/vhdx/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_block/src/lib.rs
/cloud-hypervisor/vhost_user_net/Cargo.toml
/cloud-hypervisor/vhost_user_net/src/lib.rs
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/net.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/blk.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/net.rs
/cloud-hypervisor/virtio-devices/src/vsock/mod.rs
/cloud-hypervisor/virtio-devices/src/vsock/packet.rs
/cloud-hypervisor/vm-device/Cargo.toml
/cloud-hypervisor/vm-migration/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/api/openapi/cloud-hypervisor.yaml
/cloud-hypervisor/vmm/src/config.rs
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
/cloud-hypervisor/vmm/src/vm_config.rs
c22c467508-Feb-2023 Rob Bradford <robert.bradford@intel.com>

arch, hypervisor: Populate CPUID leaf 0x4000_0010 (TSC frequency)

This hypervisor leaf includes details of the TSC frequency if that is
available from KVM. This can be used to efficiently calculate

arch, hypervisor: Populate CPUID leaf 0x4000_0010 (TSC frequency)

This hypervisor leaf includes details of the TSC frequency if that is
available from KVM. This can be used to efficiently calculate time
passed when there is an invariant TSC.

TEST=Run `cpuid` in the guest and observe the frequency populated.

Fixes: #5178

Signed-off-by: Rob Bradford <robert.bradford@intel.com>

show more ...

69e8f60b02-Feb-2023 Rob Bradford <robert.bradford@intel.com>

tdx: Set the SEPT_VE_DISABLE attribute

This is required for booting Linux:

From: https://lore.kernel.org/all/20221028141220.29217-3-kirill.shutemov@linux.intel.com/

"""

Virtualization Exceptions

tdx: Set the SEPT_VE_DISABLE attribute

This is required for booting Linux:

From: https://lore.kernel.org/all/20221028141220.29217-3-kirill.shutemov@linux.intel.com/

"""

Virtualization Exceptions (#VE) are delivered to TDX guests due to
specific guest actions such as using specific instructions or accessing
a specific MSR.

Notable reason for #VE is access to specific guest physical addresses.
It requires special security considerations as it is not fully in
control of the guest kernel. VMM can remove a page from EPT page table
and trigger #VE on access.

The primary use-case for #VE on a memory access is MMIO: VMM removes
page from EPT to trigger exception in the guest which allows guest to
emulate MMIO with hypercalls.

MMIO only happens on shared memory. All conventional kernel memory is
private. This includes everything from kernel stacks to kernel text.

Handling exceptions on arbitrary accesses to kernel memory is
essentially impossible as handling #VE may require access to memory
that also triggers the exception.

TDX module provides mechanism to disable #VE delivery on access to
private memory. If SEPT_VE_DISABLE TD attribute is set, private EPT
violation will not be reflected to the guest as #VE, but will trigger
exit to VMM.

Make sure the attribute is set by VMM. Panic otherwise.

There's small window during the boot before the check where kernel has
early #VE handler. But the handler is only for port I/O and panic as
soon as it sees any other #VE reason.

SEPT_VE_DISABLE makes SEPT violation unrecoverable and terminating the
TD is the only option.

Kernel has no legitimate use-cases for #VE on private memory. It is
either a guest kernel bug (like access of unaccepted memory) or
malicious/buggy VMM that removes guest page that is still in use.

In both cases terminating TD is the right thing to do.

"""

With this change Cloud Hypervisor can boot the current Linux guest
kernel.

Reported-By: Jiaqi Gao <jiaqi.gao@intel.com
Signed-off-by: Rob Bradford <robert.bradford@intel.com>

show more ...

ad202f9b27-Jan-2023 Praveen K Paladugu <prapal@linux.microsoft.com>

hypervisor: x86: emulate MOVSB

Signed-off-by: Praveen K Paladugu <prapal@linux.microsoft.com>

3a225aaa26-Jan-2023 Wei Liu <liuwe@microsoft.com>

hypervisor: x86: emulate MOVSW

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

1bfa07f426-Jan-2023 Wei Liu <liuwe@microsoft.com>

hypervisor: x86: use a macro to generate emulate function for movs

No functional change.

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

e4ae668b13-Dec-2022 Sebastien Boeuf <sebastien.boeuf@intel.com>

tdx: Update support based on kvm-upstream v5.19

In order to comply with latest TDX version, we rely onto the branch
kvm-upstream-2022.08.07-v5.19-rc8 from https://github.com/intel/tdx
repository. Up

tdx: Update support based on kvm-upstream v5.19

In order to comply with latest TDX version, we rely onto the branch
kvm-upstream-2022.08.07-v5.19-rc8 from https://github.com/intel/tdx
repository. Updates are based on changes that happened in
arch/x86/include/uapi/asm/kvm.h headers file.

Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>

show more ...


/cloud-hypervisor/.github/workflows/release.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/docs/api.md
/cloud-hypervisor/docs/custom-image.md
/cloud-hypervisor/docs/debug-port.md
/cloud-hypervisor/docs/gdb.md
/cloud-hypervisor/docs/heap-profiling.md
/cloud-hypervisor/docs/hotplug.md
/cloud-hypervisor/docs/iommu.md
/cloud-hypervisor/docs/live_migration.md
/cloud-hypervisor/docs/logging.md
/cloud-hypervisor/docs/memory.md
/cloud-hypervisor/docs/profiling.md
/cloud-hypervisor/docs/snapshot_restore.md
/cloud-hypervisor/docs/vhost-user-blk-testing.md
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/fuzz/fuzz_targets/net.rs
/cloud-hypervisor/hypervisor/Cargo.toml
kvm/mod.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/performance-metrics/Cargo.toml
/cloud-hypervisor/performance-metrics/src/main.rs
/cloud-hypervisor/performance-metrics/src/performance_tests.rs
/cloud-hypervisor/release-notes.md
/cloud-hypervisor/resources/Dockerfile
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_sgx.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/sha1sums-x86_64
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/test_infra/src/lib.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vfio_user/Cargo.toml
/cloud-hypervisor/vhdx/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_block/src/lib.rs
/cloud-hypervisor/vhost_user_block/src/main.rs
/cloud-hypervisor/vhost_user_net/Cargo.toml
/cloud-hypervisor/vhost_user_net/src/main.rs
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/balloon.rs
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/console.rs
/cloud-hypervisor/virtio-devices/src/iommu.rs
/cloud-hypervisor/virtio-devices/src/mem.rs
/cloud-hypervisor/virtio-devices/src/net.rs
/cloud-hypervisor/virtio-devices/src/pmem.rs
/cloud-hypervisor/virtio-devices/src/rng.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/blk.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/fs.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/net.rs
/cloud-hypervisor/virtio-devices/src/vsock/device.rs
/cloud-hypervisor/virtio-devices/src/watchdog.rs
/cloud-hypervisor/vm-device/Cargo.toml
/cloud-hypervisor/vm-migration/Cargo.toml
/cloud-hypervisor/vm-migration/src/lib.rs
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/config.rs
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/device_manager.rs
/cloud-hypervisor/vmm/src/vm.rs
/cloud-hypervisor/vmm/src/vm_config.rs
7d8f795411-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 ...

4e3bc20f09-Jan-2023 Muminul Islam <muislam@microsoft.com>

vmm: Ensure PIO/MMIO exits complete before pausing only for KVM

MSHV does not require to ensure MMIO/PIO exits complete
before pausing. This patch makes sure the above requirement
by checking the hy

vmm: Ensure PIO/MMIO exits complete before pausing only for KVM

MSHV does not require to ensure MMIO/PIO exits complete
before pausing. This patch makes sure the above requirement
by checking the hypervisor type run-time.

Fixes #5037

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

show more ...


/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/x86_64/mod.rs
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/block_util/src/async_io.rs
/cloud-hypervisor/block_util/src/fixed_vhd_async.rs
/cloud-hypervisor/block_util/src/fixed_vhd_sync.rs
/cloud-hypervisor/block_util/src/lib.rs
/cloud-hypervisor/block_util/src/qcow_sync.rs
/cloud-hypervisor/block_util/src/raw_async.rs
/cloud-hypervisor/block_util/src/raw_sync.rs
/cloud-hypervisor/block_util/src/vhdx_sync.rs
/cloud-hypervisor/build.rs
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/docs/memory.md
/cloud-hypervisor/event_monitor/Cargo.toml
/cloud-hypervisor/fuzz/Cargo.lock
/cloud-hypervisor/hypervisor/Cargo.toml
lib.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/performance-metrics/Cargo.toml
/cloud-hypervisor/performance-metrics/build.rs
/cloud-hypervisor/performance-metrics/src/main.rs
/cloud-hypervisor/performance-metrics/src/performance_tests.rs
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/qcow/src/qcow.rs
/cloud-hypervisor/rate_limiter/Cargo.toml
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/sha1sums-x86_64
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/test_infra/Cargo.toml
/cloud-hypervisor/test_infra/src/lib.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/tracer/Cargo.toml
/cloud-hypervisor/vfio_user/Cargo.toml
/cloud-hypervisor/vhdx/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_block/src/main.rs
/cloud-hypervisor/vhost_user_net/Cargo.toml
/cloud-hypervisor/vhost_user_net/src/main.rs
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vm-device/Cargo.toml
/cloud-hypervisor/vm-migration/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/api/openapi/cloud-hypervisor.yaml
/cloud-hypervisor/vmm/src/config.rs
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/serial_manager.rs
8914ce9d17-Dec-2022 Jinank Jain <jinankjain@microsoft.com>

build: Bump mshv-ioctls from `10d0c52` to `ef01a5a`

With this bump there was a change in one of the externally exposed
variable. Thus, the use of that variable in CLH must be adjusted
accordingly.

build: Bump mshv-ioctls from `10d0c52` to `ef01a5a`

With this bump there was a change in one of the externally exposed
variable. Thus, the use of that variable in CLH must be adjusted
accordingly.

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

show more ...

3a232ef316-Dec-2022 Wei Liu <liuwe@microsoft.com>

hypervisor: kvm: aarch64: remove repetition in offset_of

The repetition served no purpose.

No functional change.

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

cd83d25816-Dec-2022 Wei Liu <liuwe@microsoft.com>

hypervisor: kvm: aarch64: rename offset__of to offset_of

The double underscore made it different from how other projects would
name this particular macro.

No functional change.

Signed-off-by: Wei

hypervisor: kvm: aarch64: rename offset__of to offset_of

The double underscore made it different from how other projects would
name this particular macro.

No functional change.

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

show more ...

12345678910>>...21