History log of /cloud-hypervisor/hypervisor/src/ (Results 476 – 500 of 516)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
89a6b63e31-Aug-2020 Henry Wang <Henry.Wang@arm.com>

hypervisor: Implement `get_device_attr` method for AArch64

This commit implements the `get_device_attr` method for the
`KVM_GET_DEVICE_ATTR` ioctl. This ioctl will be used in retrieving
the GIC stat

hypervisor: Implement `get_device_attr` method for AArch64

This commit implements the `get_device_attr` method for the
`KVM_GET_DEVICE_ATTR` ioctl. This ioctl will be used in retrieving
the GIC status.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>

show more ...

ffafeda430-Aug-2020 Henry Wang <Henry.Wang@arm.com>

AArch64: Implement AArch64 vCPU states save/restore

This commit adds methods to save/restore AArch64 vCPU registers,
including:

1. The AArch64 `VcpuKvmState` structure.

2. Some `Vcpu` trait method

AArch64: Implement AArch64 vCPU states save/restore

This commit adds methods to save/restore AArch64 vCPU registers,
including:

1. The AArch64 `VcpuKvmState` structure.

2. Some `Vcpu` trait methods of the `KvmVcpu` structure to
enable the save/restore of the AArch64 vCPU states.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>

show more ...

e3d45be628-Aug-2020 Henry Wang <Henry.Wang@arm.com>

AArch64: Preparation for vCPU save/restore

This commit ports code from firecracker and refactors the existing
AArch64 code as the preparation for implementing save/restore
AArch64 vCPU, including:

AArch64: Preparation for vCPU save/restore

This commit ports code from firecracker and refactors the existing
AArch64 code as the preparation for implementing save/restore
AArch64 vCPU, including:

1. Modification of `arm64_core_reg` macro to retrive the index of
arm64 core register and implemention of a helper to determine if
a register is a system register.

2. Move some macros and helpers in `arch` crate to the `hypervisor`
crate.

3. Added related unit tests for above functions and macros.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>

show more ...


/cloud-hypervisor/CONTRIBUTING.md
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/src/aarch64/fdt.rs
/cloud-hypervisor/arch/src/aarch64/gic.rs
/cloud-hypervisor/arch/src/aarch64/gicv3_its.rs
/cloud-hypervisor/arch/src/aarch64/layout.rs
/cloud-hypervisor/arch/src/aarch64/mod.rs
/cloud-hypervisor/arch/src/aarch64/regs.rs
/cloud-hypervisor/arch/src/x86_64/mod.rs
/cloud-hypervisor/block_util/src/lib.rs
/cloud-hypervisor/devices/src/legacy/rtc_pl031.rs
/cloud-hypervisor/docs/api.md
/cloud-hypervisor/docs/hotplug.md
/cloud-hypervisor/docs/intel_sgx.md
/cloud-hypervisor/docs/memory.md
/cloud-hypervisor/docs/networking.md
/cloud-hypervisor/docs/snapshot_restore.md
cpu.rs
kvm/aarch64/mod.rs
kvm/mod.rs
/cloud-hypervisor/pci/src/configuration.rs
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/qcow/src/qcow.rs
/cloud-hypervisor/release-notes.md
/cloud-hypervisor/resources/linux-config-x86_64
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_fs/src/filesystem.rs
/cloud-hypervisor/virtio-devices/src/iommu.rs
/cloud-hypervisor/virtio-devices/src/mem.rs
/cloud-hypervisor/virtio-devices/src/net_util.rs
/cloud-hypervisor/virtio-devices/src/seccomp_filters.rs
/cloud-hypervisor/virtio-devices/src/vsock/csm/connection.rs
/cloud-hypervisor/virtio-devices/src/vsock/csm/txbuf.rs
/cloud-hypervisor/virtio-devices/src/vsock/device.rs
/cloud-hypervisor/virtio-devices/src/vsock/packet.rs
/cloud-hypervisor/virtio-devices/src/vsock/unix/muxer.rs
/cloud-hypervisor/vm-device/src/lib.rs
/cloud-hypervisor/vm-virtio/src/queue.rs
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/acpi.rs
/cloud-hypervisor/vmm/src/api/http.rs
/cloud-hypervisor/vmm/src/api/http_endpoint.rs
/cloud-hypervisor/vmm/src/api/mod.rs
/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/device_manager.rs
/cloud-hypervisor/vmm/src/lib.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
da642fcf15-Sep-2020 Rob Bradford <robert.bradford@intel.com>

hypervisor: Add "HyperV" exit to list of KVM exits

Currently we don't need to do anything to service these exits but when
the synthetic interrupt controller is active an exit will be triggered
to no

hypervisor: Add "HyperV" exit to list of KVM exits

Currently we don't need to do anything to service these exits but when
the synthetic interrupt controller is active an exit will be triggered
to notify the VMM of details of the synthetic interrupt page.

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

show more ...

9b48ee3815-Sep-2020 Rob Bradford <robert.bradford@intel.com>

hypervisor: Support enabling HyperV synthetic interrupt controller

This adds a KVM HyperV synthetic interrupt controller in place of the
emulated PIC.

Signed-off-by: Rob Bradford <robert.bradford@i

hypervisor: Support enabling HyperV synthetic interrupt controller

This adds a KVM HyperV synthetic interrupt controller in place of the
emulated PIC.

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

show more ...


/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/block_util/src/lib.rs
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/devices/src/acpi.rs
/cloud-hypervisor/devices/src/ioapic.rs
/cloud-hypervisor/devices/src/legacy/cmos.rs
/cloud-hypervisor/devices/src/legacy/fwdebug.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/lib.rs
/cloud-hypervisor/hypervisor/Cargo.toml
cpu.rs
kvm/mod.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/option_parser/src/lib.rs
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/pci/src/bus.rs
/cloud-hypervisor/pci/src/device.rs
/cloud-hypervisor/pci/src/lib.rs
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_sgx.sh
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_backend/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_fs/Cargo.toml
/cloud-hypervisor/vhost_user_net/Cargo.toml
/cloud-hypervisor/virtio-devices/Cargo.toml
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/block_io_uring.rs
/cloud-hypervisor/virtio-devices/src/device.rs
/cloud-hypervisor/virtio-devices/src/seccomp_filters.rs
/cloud-hypervisor/virtio-devices/src/transport/mmio.rs
/cloud-hypervisor/virtio-devices/src/transport/pci_device.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/vsock/mod.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vm-device/src/bus.rs
/cloud-hypervisor/vm-device/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/memory_manager.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
53f4fed507-Sep-2020 Wei Liu <liuwe@microsoft.com>

hypervisor: drop get_api_version from Hypervisor trait

The new function already checks if the API version is compatible. There
is no need to expose the get_api_version function to code outside
hyper

hypervisor: drop get_api_version from Hypervisor trait

The new function already checks if the API version is compatible. There
is no need to expose the get_api_version function to code outside
hypervisor crate.

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

show more ...

d73971e407-Sep-2020 Wei Liu <liuwe@microsoft.com>

hypervisor: kvm: check API compatibility

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

c266e56a02-Sep-2020 Rob Bradford <robert.bradford@intel.com>

hypervisor: Fix copy and pasted error enum entries

Remove unused GetNrVcpus error and fix duplicated error message for
GetCpuId.

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


/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/arch/src/aarch64/fdt.rs
/cloud-hypervisor/devices/src/gic.rs
/cloud-hypervisor/devices/src/ioapic.rs
/cloud-hypervisor/devices/src/legacy/serial.rs
/cloud-hypervisor/docs/memory.md
hypervisor.rs
/cloud-hypervisor/option_parser/src/lib.rs
/cloud-hypervisor/pci/src/configuration.rs
/cloud-hypervisor/pci/src/msix.rs
/cloud-hypervisor/scripts/run_unit_tests.sh
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/test_data/cloud-init/ubuntu/user-data
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/block_io_uring.rs
/cloud-hypervisor/virtio-devices/src/console.rs
/cloud-hypervisor/virtio-devices/src/iommu.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/seccomp_filters.rs
/cloud-hypervisor/virtio-devices/src/transport/mmio.rs
/cloud-hypervisor/virtio-devices/src/transport/pci_common_config.rs
/cloud-hypervisor/virtio-devices/src/transport/pci_device.rs
/cloud-hypervisor/virtio-devices/src/vsock/device.rs
/cloud-hypervisor/vm-migration/src/lib.rs
/cloud-hypervisor/vm-virtio/src/queue.rs
/cloud-hypervisor/vmm/src/acpi.rs
/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/device_manager.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
afc98a5e23-Aug-2020 Michael Zhao <michael.zhao@arm.com>

vmm: Fix AArch64 clippy warnings of vmm and other crates

Signed-off-by: Michael Zhao <michael.zhao@arm.com>

92b4499c21-Aug-2020 Muminul Islam <muislam@microsoft.com>

vmm, hypervisor: Add vmstate to snapshot and restore path

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

77e901a621-Aug-2020 Muminul Islam <muislam@microsoft.com>

hypervisor: Introduce VM state to Vm hypervisor trait

We may need to store hypervisor speciific data to the VM. This support is
needed for Microsoft hyperv implementations. This patch introduces two

hypervisor: Introduce VM state to Vm hypervisor trait

We may need to store hypervisor speciific data to the VM. This support is
needed for Microsoft hyperv implementations. This patch introduces two
new definitions to Vm trait and implements for KVM.

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

show more ...


/cloud-hypervisor/.github/workflows/audit.yaml
/cloud-hypervisor/.github/workflows/build.yaml
/cloud-hypervisor/.github/workflows/quality.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/docs/fs.md
/cloud-hypervisor/docs/vhost-user-blk-testing.md
/cloud-hypervisor/docs/vhost-user-net-testing.md
/cloud-hypervisor/hypervisor/Cargo.toml
kvm/mod.rs
lib.rs
vm.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/pci/src/msix.rs
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/qcow/src/raw_file.rs
/cloud-hypervisor/release-notes.md
/cloud-hypervisor/rpm/cloud-hypervisor.spec
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/test_data/cloud-init/ubuntu/user-data
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_backend/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_fs/Cargo.toml
/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/balloon.rs
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/block_io_uring.rs
/cloud-hypervisor/virtio-devices/src/console.rs
/cloud-hypervisor/virtio-devices/src/device.rs
/cloud-hypervisor/virtio-devices/src/epoll_helper.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/net_util.rs
/cloud-hypervisor/virtio-devices/src/pmem.rs
/cloud-hypervisor/virtio-devices/src/rng.rs
/cloud-hypervisor/virtio-devices/src/seccomp_filters.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/handler.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/mod.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/net.rs
/cloud-hypervisor/virtio-devices/src/vsock/device.rs
/cloud-hypervisor/virtio-devices/src/vsock/mod.rs
/cloud-hypervisor/virtio-devices/src/vsock/unix/muxer.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/cpu.rs
/cloud-hypervisor/vmm/src/device_manager.rs
/cloud-hypervisor/vmm/src/memory_manager.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
0f1ab38d05-Aug-2020 Sebastien Boeuf <sebastien.boeuf@intel.com>

hypervisor: kvm: Make MSRs set/get more flexible

Based on the way KVM_GET_MSRS and KVM_SET_MSRS work, both function are
very unlikely to fail, as they simply stop looping through the list of
MSRs as

hypervisor: kvm: Make MSRs set/get more flexible

Based on the way KVM_GET_MSRS and KVM_SET_MSRS work, both function are
very unlikely to fail, as they simply stop looping through the list of
MSRs as soon as getting or setting one fails. This is causing some
issues with the snapshot/restore feature, as on some platforms, we only
save a subset of the list of MSRs, leading to unproper way of saving the
VM.

The way to address this issue is by checking the number of MSRs get/set
matches the expected amount from the list. In case it does not match, we
simply ignore the failing MSR and continue getting/setting the rest of
the list. By doing this by iterations, we end up getting/setting as many
MSRs as the platform can support.

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

show more ...


/cloud-hypervisor/.github/workflows/cross-build.yaml
/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/Jenkinsfile
/cloud-hypervisor/README.md
/cloud-hypervisor/acpi_tables/src/sdt.rs
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/aarch64/gic.rs
/cloud-hypervisor/arch/src/aarch64/gicv2.rs
/cloud-hypervisor/arch/src/aarch64/gicv3.rs
/cloud-hypervisor/arch/src/aarch64/gicv3_its.rs
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/block_util/src/lib.rs
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/devices/src/acpi.rs
/cloud-hypervisor/devices/src/legacy/cmos.rs
/cloud-hypervisor/devices/src/lib.rs
/cloud-hypervisor/docs/arm64.md
/cloud-hypervisor/docs/snapshot_restore.md
/cloud-hypervisor/hypervisor/Cargo.toml
kvm/mod.rs
lib.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/net_util/src/lib.rs
/cloud-hypervisor/net_util/src/queue_pair.rs
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/resources/linux-config-aarch64
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/sha1sums-aarch64
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_backend/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_fs/Cargo.toml
/cloud-hypervisor/vhost_user_fs/src/sandbox.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/block_io_uring.rs
/cloud-hypervisor/virtio-devices/src/console.rs
/cloud-hypervisor/virtio-devices/src/epoll_helper.rs
/cloud-hypervisor/virtio-devices/src/iommu.rs
/cloud-hypervisor/virtio-devices/src/lib.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/seccomp_filters.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/acpi.rs
/cloud-hypervisor/vmm/src/api/http.rs
/cloud-hypervisor/vmm/src/config.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
ddf1b76921-Jul-2020 Michael Zhao <michael.zhao@arm.com>

hypervisor: Refactor create_passthrough_device() for generic type

Changed the return type of create_passthrough_device() to generic type
hypervisor::Device.

Signed-off-by: Michael Zhao <michael.zha

hypervisor: Refactor create_passthrough_device() for generic type

Changed the return type of create_passthrough_device() to generic type
hypervisor::Device.

Signed-off-by: Michael Zhao <michael.zhao@arm.com>

show more ...

e728888816-Jul-2020 Michael Zhao <michael.zhao@arm.com>

hypervisor: Extend hypervisor crate with Device trait

Added Device trait and KvmDevice struct for KVM-emulated devices.

Signed-off-by: Michael Zhao <michael.zhao@arm.com>

e1af251c17-Jul-2020 Wei Liu <liuwe@microsoft.com>

vmm, hypervisor: adjust set_gsi_routing / set_gsi_routes

Make set_gsi_routing take a list of IrqRoutingEntry. The construction of
hypervisor specific structure is left to set_gsi_routing.

Now set_g

vmm, hypervisor: adjust set_gsi_routing / set_gsi_routes

Make set_gsi_routing take a list of IrqRoutingEntry. The construction of
hypervisor specific structure is left to set_gsi_routing.

Now set_gsi_routes, which is part of the interrupt module, is only
responsible for constructing a list of routing entries.

This further splits hypervisor specific code from hypervisor agnostic
code.

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

show more ...

ff8d7bfe17-Jul-2020 Wei Liu <liuwe@microsoft.com>

hypervisor: add create_passthrough_device call to Vm trait

That function is going to return a handle for passthrough related
operations.

Move create_kvm_device code there.

Signed-off-by: Wei Liu <

hypervisor: add create_passthrough_device call to Vm trait

That function is going to return a handle for passthrough related
operations.

Move create_kvm_device code there.

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

show more ...


/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/Cargo.toml
/cloud-hypervisor/arch/src/aarch64/fdt.rs
/cloud-hypervisor/arch/src/aarch64/gic.rs
/cloud-hypervisor/arch/src/aarch64/regs.rs
/cloud-hypervisor/arch/src/x86_64/interrupts.rs
/cloud-hypervisor/arch/src/x86_64/regs.rs
/cloud-hypervisor/block_util/Cargo.toml
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/docs/api.md
/cloud-hypervisor/docs/arm64.md
/cloud-hypervisor/docs/fuzzing.md
/cloud-hypervisor/fuzz/.gitignore
/cloud-hypervisor/fuzz/Cargo.toml
/cloud-hypervisor/fuzz/fuzz_targets/qcow.rs
kvm/mod.rs
vm.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/vhost_user_backend/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_fs/Cargo.toml
/cloud-hypervisor/vhost_user_net/Cargo.toml
/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/device.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/vm-virtio/Cargo.toml
/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/vm.rs
a83bd97e14-Jul-2020 Wei Liu <liuwe@microsoft.com>

hypervisor: introduce a new function

It returns an hypervisor object depending on which hypervisor is
configured. Currently it only supports KVM.

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

e10d9b1308-Jul-2020 Sebastien Boeuf <sebastien.boeuf@intel.com>

arch, hypervisor, vmm: Patch CPUID subleaves to expose EPC sections

The support for SGX is exposed to the guest through CPUID 0x12. KVM
passes static subleaves 0 and 1 from the host to the guest, wi

arch, hypervisor, vmm: Patch CPUID subleaves to expose EPC sections

The support for SGX is exposed to the guest through CPUID 0x12. KVM
passes static subleaves 0 and 1 from the host to the guest, without
needing any modification from the VMM itself.

But SGX also relies on dynamic subleaves 2 through N, used for
describing each EPC section. This is not handled by KVM, which means
the VMM is in charge of setting each subleaf starting from index 2
up to index N, depending on the number of EPC sections.

These subleaves 2 through N are not listed as part of the supported
CPUID entries from KVM. But it's important to set them as long as index
0 and 1 are present and indicate that SGX is supported.

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

show more ...

cce6237517-Jun-2020 Michael Zhao <michael.zhao@arm.com>

pci: Enable GSI routing (MSI type) for AArch64

In this commit we saved the BDF of a PCI device and set it to "devid"
in GSI routing entry, because this field is mandatory for GICv3-ITS.

Signed-off-

pci: Enable GSI routing (MSI type) for AArch64

In this commit we saved the BDF of a PCI device and set it to "devid"
in GSI routing entry, because this field is mandatory for GICv3-ITS.

Signed-off-by: Michael Zhao <michael.zhao@arm.com>

show more ...

82a0e29c07-Jul-2020 Michael Zhao <michael.zhao@arm.com>

hypervisor: Export check_extension() API from hypervisor::Vm

Signed-off-by: Michael Zhao <michael.zhao@arm.com>


/cloud-hypervisor/.github/workflows/cross-build.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/arch/src/aarch64/gic.rs
/cloud-hypervisor/arch/src/aarch64/gicv2.rs
/cloud-hypervisor/arch/src/aarch64/gicv3.rs
/cloud-hypervisor/arch/src/aarch64/gicv3_its.rs
/cloud-hypervisor/arch/src/aarch64/mod.rs
/cloud-hypervisor/devices/Cargo.toml
/cloud-hypervisor/hypervisor/Cargo.toml
kvm/mod.rs
vm.rs
/cloud-hypervisor/net_util/Cargo.toml
/cloud-hypervisor/net_util/src/lib.rs
/cloud-hypervisor/net_util/src/open_tap.rs
/cloud-hypervisor/net_util/src/queue_pair.rs
/cloud-hypervisor/option_parser/Cargo.toml
/cloud-hypervisor/option_parser/src/lib.rs
/cloud-hypervisor/pci/Cargo.toml
/cloud-hypervisor/pci/src/bus.rs
/cloud-hypervisor/pci/src/vfio.rs
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/qcow/src/qcow.rs
/cloud-hypervisor/qcow/src/qcow_raw_file.rs
/cloud-hypervisor/qcow/src/raw_file.rs
/cloud-hypervisor/resources/linux-config-aarch64
/cloud-hypervisor/resources/linux-config-x86_64
/cloud-hypervisor/scripts/dev_cli.sh
/cloud-hypervisor/scripts/run_cargo_tests.sh
/cloud-hypervisor/scripts/run_integration_tests_aarch64.sh
/cloud-hypervisor/scripts/run_integration_tests_x86_64.sh
/cloud-hypervisor/scripts/run_unit_tests.sh
/cloud-hypervisor/scripts/sha1sums-aarch64
/cloud-hypervisor/scripts/sha1sums-x86_64
/cloud-hypervisor/src/bin/ch-remote.rs
/cloud-hypervisor/src/main.rs
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_backend/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_block/src/lib.rs
/cloud-hypervisor/vhost_user_fs/Cargo.toml
/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/balloon.rs
/cloud-hypervisor/virtio-devices/src/block.rs
/cloud-hypervisor/virtio-devices/src/iommu.rs
/cloud-hypervisor/virtio-devices/src/lib.rs
/cloud-hypervisor/virtio-devices/src/mem.rs
/cloud-hypervisor/virtio-devices/src/net.rs
/cloud-hypervisor/virtio-devices/src/net_util.rs
/cloud-hypervisor/vm-allocator/Cargo.toml
/cloud-hypervisor/vmm/Cargo.toml
/cloud-hypervisor/vmm/src/api/mod.rs
/cloud-hypervisor/vmm/src/api/openapi/cloud-hypervisor.yaml
/cloud-hypervisor/vmm/src/config.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/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
a4f484bc03-Jul-2020 Wei Liu <liuwe@microsoft.com>

hypervisor: Define a VM-Exit abstraction

In order to move the hypervisor specific parts of the VM exit handling
path, we're defining a generic, hypervisor agnostic VM exit enum.

This is what the hy

hypervisor: Define a VM-Exit abstraction

In order to move the hypervisor specific parts of the VM exit handling
path, we're defining a generic, hypervisor agnostic VM exit enum.

This is what the hypervisor's Vcpu run() call should return when the VM
exit can not be completely handled through the hypervisor specific bits.
For KVM based hypervisors, this means directly forwarding the IO related
exits back to the VMM itself. For other hypervisors that e.g. rely on the
VMM to decode and emulate instructions, this means the decoding itself
would happen in the hypervisor crate exclusively, and the rest of the VM
exit handling would be handled through the VMM device model implementation.

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>

Fix test_vm unit test by using the new abstraction and dropping some
dead code.

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

show more ...

cfa758fb04-Jul-2020 Wei Liu <liuwe@microsoft.com>

vmm, hypervisor: introduce and use make_user_memory_region

This removes the last KVM-ism from memory_manager. Also make use of that
method in other places.

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

vmm, hypervisor: introduce and use make_user_memory_region

This removes the last KVM-ism from memory_manager. Also make use of that
method in other places.

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

show more ...

618722cd03-Jul-2020 Samuel Ortiz <sameo@linux.intel.com>

hypervisor: cpu: Rename state getter and setter

vcpu.{set_}cpu_state() is a stutter.

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>


/cloud-hypervisor/Cargo.lock
/cloud-hypervisor/Cargo.toml
/cloud-hypervisor/README.md
/cloud-hypervisor/arch/src/x86_64/regs.rs
/cloud-hypervisor/docs/api.md
/cloud-hypervisor/docs/arm64.md
/cloud-hypervisor/docs/custom-image.md
/cloud-hypervisor/docs/debug-port.md
/cloud-hypervisor/docs/fs.md
/cloud-hypervisor/docs/hotplug.md
/cloud-hypervisor/docs/iommu.md
/cloud-hypervisor/docs/networking.md
/cloud-hypervisor/docs/vfio.md
/cloud-hypervisor/docs/vhost-user-blk-testing.md
/cloud-hypervisor/docs/vhost-user-net-testing.md
cpu.rs
kvm/mod.rs
/cloud-hypervisor/qcow/Cargo.toml
/cloud-hypervisor/qcow/src/qcow.rs
/cloud-hypervisor/qcow/src/qcow_raw_file.rs
/cloud-hypervisor/scripts/create-cloud-init.sh
/cloud-hypervisor/scripts/run_integration_tests.sh
/cloud-hypervisor/scripts/sha1sums
/cloud-hypervisor/src/bin/vhost_user_fs.rs
/cloud-hypervisor/test_data/cloud-init/ubuntu/network-config
/cloud-hypervisor/test_data/cloud-init/ubuntu/user-data
/cloud-hypervisor/tests/integration.rs
/cloud-hypervisor/vhost_user_backend/Cargo.toml
/cloud-hypervisor/vhost_user_block/Cargo.toml
/cloud-hypervisor/vhost_user_block/src/lib.rs
/cloud-hypervisor/vhost_user_fs/Cargo.toml
/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/console.rs
/cloud-hypervisor/virtio-devices/src/device.rs
/cloud-hypervisor/virtio-devices/src/iommu.rs
/cloud-hypervisor/virtio-devices/src/lib.rs
/cloud-hypervisor/virtio-devices/src/mem.rs
/cloud-hypervisor/virtio-devices/src/net.rs
/cloud-hypervisor/virtio-devices/src/net_util.rs
/cloud-hypervisor/virtio-devices/src/pmem.rs
/cloud-hypervisor/virtio-devices/src/rng.rs
/cloud-hypervisor/virtio-devices/src/transport/mmio.rs
/cloud-hypervisor/virtio-devices/src/transport/mod.rs
/cloud-hypervisor/virtio-devices/src/transport/pci_common_config.rs
/cloud-hypervisor/virtio-devices/src/transport/pci_device.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/handler.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/mod.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/net.rs
/cloud-hypervisor/virtio-devices/src/vhost_user/vu_common_ctrl.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/csm/txbuf.rs
/cloud-hypervisor/virtio-devices/src/vsock/device.rs
/cloud-hypervisor/virtio-devices/src/vsock/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-virtio/Cargo.toml
/cloud-hypervisor/vm-virtio/src/lib.rs
/cloud-hypervisor/vm-virtio/src/queue.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/memory_manager.rs
/cloud-hypervisor/vmm/src/seccomp_filters.rs
/cloud-hypervisor/vmm/src/vm.rs
8e43f88601-Jul-2020 Rob Bradford <robert.bradford@intel.com>

build: Bump kvm-ioctls dependency after rebase

ch branch is now rebased on latest upstream master

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

e35d4c5b30-Jun-2020 Sebastien Boeuf <sebastien.boeuf@intel.com>

hypervisor: Store all supported MSRs

On x86 architecture, we need to save a list of MSRs as part of the vCPU
state. By providing the full list of MSRs supported by KVM, this patch
fixes the remainin

hypervisor: Store all supported MSRs

On x86 architecture, we need to save a list of MSRs as part of the vCPU
state. By providing the full list of MSRs supported by KVM, this patch
fixes the remaining snapshot/restore issues, as the vCPU is restored
with all its previous states.

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

show more ...

1...<<1112131415161718192021