Sebastien Boeuf
340fd6571a
virtio-devices: vdpa: Make vhost-vdpa handler optional
...
In order to anticipate for migration support, we need to be able to
create a Vdpa object without VhostKernVdpa object associated with it.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-13 10:03:23 +02:00
Sebastien Boeuf
02f951a9c3
virtio-devices: vdpa: Simplify vring enabling
...
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-13 10:03:23 +02:00
Sebastien Boeuf
22be5f9d0f
vmm: Extend list of authorized ioctls for vDPA
...
Adding VHOST_VDPA_GET_CONFIG_SIZE and VHOST_VDPA_SUSPEND to the list of
authorized ioctls for the vmm thread.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-13 10:03:23 +02:00
Sebastien Boeuf
a9ccb20e5a
vm-migration: Add StartMigration type to MigratableError
...
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-13 10:03:23 +02:00
Sebastien Boeuf
2b150ac2ea
pci, virtio-devices: Restore proper BAR type
...
When restoring a VM, the BAR type can be found directly from the
snapshot resources. It is more reliable than the previous method which
was using self.use_64bit_bar from VirtioPciDevice because at the time
the BARs are allocated, the VirtioDevice hasn't been restored yet,
meaning the way to determine the value of use_64bit_bar is wrong for a
device like vDPA. At this time, the device type is not known and relying
on the stored resources is the only reliable way.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-13 10:03:23 +02:00
Sebastien Boeuf
204bf2e3f5
deps: Rely on latest rust-vmm/vhost version
...
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-13 10:03:23 +02:00
dependabot[bot]
2a40fe5541
build: Bump clap from 4.0.13 to 4.0.14
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.13 to 4.0.14.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.13...v4.0.14 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-13 00:12:47 +00:00
dependabot[bot]
7ae4e2b8fe
build: Bump clap from 4.0.13 to 4.0.14 in /fuzz
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.13 to 4.0.14.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.13...v4.0.14 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 23:39:52 +00:00
Rob Bradford
f17f4079b4
test_data: Use bash TCP support instead of netcat for boot check
...
This means that the guest image does not need to have netcat installed
making it easier to use unmodified images.
See https://www.gnu.org/software/bash/manual/html_node/Redirections.html
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-12 23:04:42 +01:00
Bo Chen
342851c88c
fuzz: Add fuzzer for virtio-mem
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-10-12 16:09:27 +01:00
Bo Chen
37c3b0429a
vmm: Make MemoryManager::create_ram_region() public
...
So that it can be reused externally, such as for fuzzing.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-10-12 16:09:27 +01:00
dependabot[bot]
af14044fb8
build: Bump zerocopy-derive from 0.3.1 to 0.3.2
...
Bumps [zerocopy-derive](https://github.com/google/zerocopy ) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/google/zerocopy/releases )
- [Commits](https://github.com/google/zerocopy/commits )
---
updated-dependencies:
- dependency-name: zerocopy-derive
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 09:57:50 +00:00
dependabot[bot]
fa39d1e9b9
build: Bump clap from 4.0.12 to 4.0.13
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.12 to 4.0.13.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.12...v4.0.13 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 09:22:18 +00:00
dependabot[bot]
00714dc54a
build: Bump openssl-src from 111.22.0+1.1.1q to 111.23.0+1.1.1r
...
Bumps [openssl-src](https://github.com/alexcrichton/openssl-src-rs ) from 111.22.0+1.1.1q to 111.23.0+1.1.1r.
- [Release notes](https://github.com/alexcrichton/openssl-src-rs/releases )
- [Commits](https://github.com/alexcrichton/openssl-src-rs/commits )
---
updated-dependencies:
- dependency-name: openssl-src
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 09:18:08 +01:00
Rob Bradford
87fb9cedc9
tests: Temporarily disable test_live_{migration,upgrade}_watchdog{_local}
...
This test has been identified as flaky and is creating CI churn.
See: #4749
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-12 09:17:39 +01:00
dependabot[bot]
ce2928d842
build: Bump clap from 4.0.12 to 4.0.13 in /fuzz
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.12 to 4.0.13.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.12...v4.0.13 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 23:45:11 +00:00
Anatol Belski
a18b08c682
seccomp: mshv: Allow create partition ioctl
...
Signed-off-by: Anatol Belski <anbelski@linux.microsoft.com>
2022-10-11 09:05:24 +01:00
dependabot[bot]
43935c3b95
build: Bump uuid from 1.1.2 to 1.2.1
...
Bumps [uuid](https://github.com/uuid-rs/uuid ) from 1.1.2 to 1.2.1.
- [Release notes](https://github.com/uuid-rs/uuid/releases )
- [Commits](https://github.com/uuid-rs/uuid/compare/1.1.2...1.2.1 )
---
updated-dependencies:
- dependency-name: uuid
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 03:12:14 +00:00
dependabot[bot]
c3c550c454
build: Bump unicode-ident from 1.0.4 to 1.0.5
...
Bumps [unicode-ident](https://github.com/dtolnay/unicode-ident ) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/dtolnay/unicode-ident/releases )
- [Commits](https://github.com/dtolnay/unicode-ident/compare/1.0.4...1.0.5 )
---
updated-dependencies:
- dependency-name: unicode-ident
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 02:38:53 +00:00
dependabot[bot]
7da632def6
build: Bump unicode-ident from 1.0.4 to 1.0.5 in /fuzz
...
Bumps [unicode-ident](https://github.com/dtolnay/unicode-ident ) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/dtolnay/unicode-ident/releases )
- [Commits](https://github.com/dtolnay/unicode-ident/compare/1.0.4...1.0.5 )
---
updated-dependencies:
- dependency-name: unicode-ident
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 01:44:58 +00:00
dependabot[bot]
f38ef20e3b
build: Bump libc from 0.2.134 to 0.2.135
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.134 to 0.2.135.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.134...0.2.135 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 01:13:44 +00:00
dependabot[bot]
a033b1ef67
build: Bump uuid from 1.1.2 to 1.2.1 in /fuzz
...
Bumps [uuid](https://github.com/uuid-rs/uuid ) from 1.1.2 to 1.2.1.
- [Release notes](https://github.com/uuid-rs/uuid/releases )
- [Commits](https://github.com/uuid-rs/uuid/compare/1.1.2...1.2.1 )
---
updated-dependencies:
- dependency-name: uuid
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 01:11:14 +00:00
dependabot[bot]
ffa7d27b5e
build: Bump libc from 0.2.134 to 0.2.135 in /fuzz
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.134 to 0.2.135.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.134...0.2.135 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 00:22:29 +00:00
dependabot[bot]
da725daca0
build: Bump clap from 4.0.10 to 4.0.12
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.10 to 4.0.12.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.10...v4.0.12 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 00:22:25 +00:00
dependabot[bot]
0fe0eb4c97
build: Bump serde_json from 1.0.85 to 1.0.86
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.85 to 1.0.86.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.85...v1.0.86 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 23:47:01 +00:00
dependabot[bot]
8877211d9e
build: Bump syn from 1.0.101 to 1.0.102
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.101 to 1.0.102.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.101...1.0.102 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-08 00:29:08 +00:00
dependabot[bot]
f907ff5d82
build: Bump syn from 1.0.101 to 1.0.102 in /fuzz
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.101 to 1.0.102.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.101...1.0.102 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-07 23:47:54 +00:00
Rob Bradford
89a2562c5a
pci: Optimise MSI-X table programming
...
With an updated Linux kernel the kernel reprograms the same table entry
in the MSI-X table multiple times. Fortunately it does so with entry
masked (the default.)
The costly part of MSI-X table reprogramming is going out to the host
kernel to update the GSI routing entries. This change makes three
optimisations.
1. If the table entry is unchanged: skip handking updates
2. Only update the GSI routing table if the table entry is unmasked
(this skips extra calls to the ioctl() for reprogramming the
entries.)
3. Only generate a message on entry unmasking if the global MSI-X enable
bit is set.
Fixes : #4273
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-07 09:57:27 -07:00
Bo Chen
29cf637f3f
vmm: Move 'default_serial/console()' to vm_config.rs
...
In this way, we have all functions related to generate default values of
vm-config structs in the same location.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-10-07 09:13:15 -07:00
Bo Chen
fd9fa2a681
virtio-mem: mem: Simplify 'process_queue'
...
No functional change.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-10-07 07:57:08 -07:00
Bo Chen
756aebafda
virtio-devices: mem: Handle and propagate errors properly
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-10-07 07:57:08 -07:00
dependabot[bot]
d4d63502be
build: Bump itoa from 1.0.3 to 1.0.4
...
Bumps [itoa](https://github.com/dtolnay/itoa ) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/dtolnay/itoa/releases )
- [Commits](https://github.com/dtolnay/itoa/compare/1.0.3...1.0.4 )
---
updated-dependencies:
- dependency-name: itoa
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-07 00:41:45 +00:00
dependabot[bot]
961793ba8c
build: Bump io-uring from 0.5.6 to 0.5.7 in /fuzz
...
Bumps [io-uring](https://github.com/tokio-rs/io-uring ) from 0.5.6 to 0.5.7.
- [Release notes](https://github.com/tokio-rs/io-uring/releases )
- [Commits](https://github.com/tokio-rs/io-uring/commits )
---
updated-dependencies:
- dependency-name: io-uring
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-07 00:23:20 +00:00
dependabot[bot]
cbeed02a7c
build: Bump itoa from 1.0.3 to 1.0.4 in /fuzz
...
Bumps [itoa](https://github.com/dtolnay/itoa ) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/dtolnay/itoa/releases )
- [Commits](https://github.com/dtolnay/itoa/compare/1.0.3...1.0.4 )
---
updated-dependencies:
- dependency-name: itoa
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-06 23:51:07 +00:00
dependabot[bot]
10eb687687
build: Bump io-uring from 0.5.6 to 0.5.7
...
Bumps [io-uring](https://github.com/tokio-rs/io-uring ) from 0.5.6 to 0.5.7.
- [Release notes](https://github.com/tokio-rs/io-uring/releases )
- [Commits](https://github.com/tokio-rs/io-uring/commits )
---
updated-dependencies:
- dependency-name: io-uring
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-06 23:49:36 +00:00
Rob Bradford
83cc554f90
vmm: Remove deprecated VmConfig::{kernel, initramfs, cmdline} members
...
These have been replaced by members of PayloadConfig and should be
removed in v28.0 (mentioned in v26.0 release notes.)
Fixes : #4737
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-06 14:25:29 +01:00
Rob Bradford
7d8d27c1b4
vmm: Rename queue size / number of queues constants
...
These constants still referenced the long removed (separate vhost-user
structs.)
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-06 14:25:29 +01:00
Rob Bradford
d692dfb8e3
vmm: Move impl Default for ...
to vm_config.rs
...
This is consistent when considering that some structs have a
`#[derive(Default)`] so it makes sense for the default implementations
to be in the same location.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-06 14:25:29 +01:00
Rob Bradford
7ad58457b0
vmm: Split structs from logic that make up VmConfig
...
Place the data structures that are required for constructing a VmConfig
into it's own module from the logic that exists to suppot them.
This is useful as a consumer of the API can now clearly see what data
structures make up the API for creating VMs.
This has no functional change and I made no attempt to clean up the
ordering (it's as in the original file) nor any other clean up.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-06 14:25:29 +01:00
dependabot[bot]
62d2189ade
build: Bump clap from 4.0.9 to 4.0.10 in /fuzz
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.9 to 4.0.10.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.9...v4.0.10 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-06 00:26:05 +00:00
dependabot[bot]
7e7855bc8f
build: Bump clap from 4.0.9 to 4.0.10
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.9 to 4.0.10.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.9...v4.0.10 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 23:51:49 +00:00
dependabot[bot]
11cc35e6b5
build: Bump arbitrary from 1.1.6 to 1.1.7 in /fuzz
...
Bumps [arbitrary](https://github.com/rust-fuzz/arbitrary ) from 1.1.6 to 1.1.7.
- [Release notes](https://github.com/rust-fuzz/arbitrary/releases )
- [Changelog](https://github.com/rust-fuzz/arbitrary/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-fuzz/arbitrary/compare/v1.1.6...v1.1.7 )
---
updated-dependencies:
- dependency-name: arbitrary
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 23:49:28 +00:00
Sebastien Boeuf
89677c3181
build: Bump clap from 3.2.22 to 4.0.9
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.2.22 to 4.0.9.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](clap-rs/clap@v3.2.22...v4.0.9)
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-major
...
Moving to the major version 4 introduced some breaking changes which had
to be handled manually.
Fixes #4709
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-10-05 12:59:14 +01:00
dependabot[bot]
307cfeba27
build: Bump smallvec from 1.9.0 to 1.10.0
...
Bumps [smallvec](https://github.com/servo/rust-smallvec ) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/servo/rust-smallvec/releases )
- [Commits](https://github.com/servo/rust-smallvec/compare/v1.9.0...v1.10.0 )
---
updated-dependencies:
- dependency-name: smallvec
dependency-type: indirect
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 01:02:17 +00:00
dependabot[bot]
43bb09df50
build: Bump vm-fdt from 8a19dcc
to d942590
...
Bumps [vm-fdt](https://github.com/rust-vmm/vm-fdt ) from `8a19dcc` to `d942590`.
- [Release notes](https://github.com/rust-vmm/vm-fdt/releases )
- [Commits](8a19dcc94a...d942590738
)
---
updated-dependencies:
- dependency-name: vm-fdt
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 00:27:38 +00:00
dependabot[bot]
81d570e271
build: Bump mshv-bindings from 6b0cf3b
to ac9c92f
...
Bumps [mshv-bindings](https://github.com/rust-vmm/mshv ) from `6b0cf3b` to `ac9c92f`.
- [Release notes](https://github.com/rust-vmm/mshv/releases )
- [Commits](6b0cf3b47f...ac9c92f9b3
)
---
updated-dependencies:
- dependency-name: mshv-bindings
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-04 23:51:43 +00:00
Rob Bradford
31ca22d4b6
virtio-devices: rng: Fix error message
...
The RNG device never reads from the guest memory it reads from a file
and writes to the guest memory.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-04 16:38:41 +01:00
Rob Bradford
cf995451a2
virtio-devices: watchdog: Generate error on invalid queue descriptor
...
Don't silently ignore the descriptors provided by the guest. This is
consistent with other devices.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-04 16:38:29 +01:00
Bo Chen
4fea40f008
fuzz: Balloon: Reduce the guest memory size and queue size
...
With the guest memory size of 1MB, a valid descriptor size can be close
to the guest memory size (e.g. 1MB) and can contain close to 256k
valid pfn entries (each entry is 4 bytes). Multiplying the queue
size (e.g. 256), there can be close to 64 millions pfn entries to
process in a single request. This is why the oss-fuzz reported a
timeout (with a limit of 60s).
By reducing the guest memory size and the queue size, the worst-case now
is 8 million pfn entries for fuzzing, which can be finished in around 20
seconds according to my local experiment.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-10-04 09:40:12 +01:00
Rob Bradford
2daab89987
vmm: Remove legacy firmware loading
...
This functionality was deprecated and is for removal in the upcoming
release.
Fixes : #4511
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-10-03 17:09:02 +01:00