Bo Chen
f0c55f5245
virtio-devices: rng: Error out of queue execution on invalid requests
...
With the virtio-rng device the descriptors that are provided by the
guest must be writable and of non-zero length. Also propagate an error
if writing to the guest memory fails.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-09-28 10:07:44 +01:00
dependabot[bot]
4779265453
build: Bump thiserror from 1.0.36 to 1.0.37 in /fuzz
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.36 to 1.0.37.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.36...1.0.37 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-28 10:07:09 +01:00
dependabot[bot]
0b9b46bbc8
build: Bump thiserror from 1.0.36 to 1.0.37
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.36 to 1.0.37.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.36...1.0.37 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-28 10:06:58 +01:00
Rob Bradford
06eb82d239
build: Consolidate "gdb" build feature into "guest_debug"
...
This simplifies the CI process but also logical with the existing
functionality under "guest_debug" (dumping guest memory).
Fixes : #4679
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-27 14:30:57 +01:00
Rob Bradford
b8503b5f45
hypervisor: Support compiling "tdx" and "mshv" feature together
...
TDX functionality is not currently available on MSHV but we should not
preclude building a binary that can run on both.
Fixes : #4677
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-27 14:30:49 +01:00
Sebastien Boeuf
3bf3cca70a
vhost_user_net: Allow user to set MTU
...
Adding the support for the user to set the MTU for the vhost-user-net
backend, which allows the integration test to be extended with the test
of the MTU parameter.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-09-27 10:37:35 +01:00
Sebastien Boeuf
903c08f8a1
net: Don't override default TAP interface MTU
...
Adjust MTU logic such that:
1. Apply an MTU to the TAP interface if the user supplies it
2. Always query the TAP interface for the MTU and expose that.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-09-27 10:37:35 +01:00
dependabot[bot]
44d66ec531
build: Bump proc-macro2 from 1.0.43 to 1.0.44
...
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2 ) from 1.0.43 to 1.0.44.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases )
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.43...1.0.44 )
---
updated-dependencies:
- dependency-name: proc-macro2
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-27 02:54:16 +00:00
dependabot[bot]
ac77d0923f
build: Bump thiserror from 1.0.35 to 1.0.36
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.35 to 1.0.36.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.35...1.0.36 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-27 02:19:05 +00:00
dependabot[bot]
ba3debaa27
build: Bump openssl-sys from 0.9.75 to 0.9.76
...
Bumps [openssl-sys](https://github.com/sfackler/rust-openssl ) from 0.9.75 to 0.9.76.
- [Release notes](https://github.com/sfackler/rust-openssl/releases )
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.75...openssl-sys-v0.9.76 )
---
updated-dependencies:
- dependency-name: openssl-sys
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-27 01:29:28 +00:00
dependabot[bot]
1ff26fbb8a
build: Bump thiserror from 1.0.35 to 1.0.36 in /fuzz
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.35 to 1.0.36.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.35...1.0.36 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-27 00:54:29 +00:00
dependabot[bot]
4aa5d5a2c1
build: Bump syn from 1.0.100 to 1.0.101
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.100 to 1.0.101.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.100...1.0.101 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-27 00:37:22 +00:00
dependabot[bot]
023c77bdf3
build: Bump proc-macro2 from 1.0.43 to 1.0.44 in /fuzz
...
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2 ) from 1.0.43 to 1.0.44.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases )
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.43...1.0.44 )
---
updated-dependencies:
- dependency-name: proc-macro2
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-27 00:19:14 +00:00
dependabot[bot]
e2a7972c59
build: Bump syn from 1.0.100 to 1.0.101 in /fuzz
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.100 to 1.0.101.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.100...1.0.101 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 23:45:54 +00:00
dependabot[bot]
a4791263c9
build: Bump mshv-bindings from bf85430
to 2d0aaa1
...
Bumps [mshv-bindings](https://github.com/rust-vmm/mshv ) from `bf85430` to `2d0aaa1`.
- [Release notes](https://github.com/rust-vmm/mshv/releases )
- [Commits](bf85430875...2d0aaa16b0
)
---
updated-dependencies:
- dependency-name: mshv-bindings
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 23:42:43 +00:00
Rob Bradford
b2d1dd65f3
build: Remove "fwdebug" and "common" feature flags
...
This simplifes the buld and checks with very little overhead and the
fwdebug device is I/O port device on 0x402 that can be used by edk2 as a
very simple character device.
See: #4679
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-26 10:16:33 -07:00
Rob Bradford
36e26f004c
.github: Consolidate quality checks into single worklow
...
Combine aarch64 and x86-64 checks into one workflow
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-26 16:52:42 +01:00
Rob Bradford
66c092e69b
build: Bump linux-loader from 0.5.0 to 0.6.0
...
Bumps [linux-loader](https://github.com/rust-vmm/linux-loader ) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/rust-vmm/linux-loader/releases )
- [Changelog](https://github.com/rust-vmm/linux-loader/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-vmm/linux-loader/compare/v0.5.0...v0.6.0 )
---
updated-dependencies:
- dependency-name: linux-loader
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-24 09:54:18 +00:00
dependabot[bot]
76903e5fd0
build: Bump jobserver from 0.1.24 to 0.1.25 in /fuzz
...
Bumps [jobserver](https://github.com/alexcrichton/jobserver-rs ) from 0.1.24 to 0.1.25.
- [Release notes](https://github.com/alexcrichton/jobserver-rs/releases )
- [Commits](https://github.com/alexcrichton/jobserver-rs/compare/0.1.24...0.1.25 )
---
updated-dependencies:
- dependency-name: jobserver
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 23:49:08 +00:00
Rob Bradford
cf31a303cf
README: Add roadmap section pointing to our new GitHub project
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-23 14:30:15 -07:00
Bo Chen
ef603fde4c
fuzz: Reduce the guest memory size for balloon fuzzer
...
As the virt queues are initialized with random bytes from the fuzzing
engine, a descriptor buffer for the available ring can have a very large
length (e.g. up to 4GB). This means there can be up to 1 billion
entries (e.g. page frame number) for virtio-balloon to process a signal
available descriptor (given each entry is 4 bytes). This is the reason
why oss-fuzz reported a hanging issue for this fuzzer, where the
generated descriptor buffer length is 4,278,321,152.
We can avoid this kind of long execution by reducing the size of guest
memory. For example, with 1MB of guest memory, the number of descriptor
entries for processing is limited ~256K.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-09-23 08:28:07 +01:00
dependabot[bot]
7a0bfd2e71
build: Bump serde from 1.0.144 to 1.0.145
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.144 to 1.0.145.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-23 00:14:50 +00:00
dependabot[bot]
98aab37b00
build: Bump serde from 1.0.144 to 1.0.145 in /fuzz
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.144 to 1.0.145.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-22 23:38:42 +00:00
Rob Bradford
194b59f44b
fuzz: Don't overload meaning of reset()
...
This function is for really for the transport layer to trigger a device
reset. Instead name it appropriately for the fuzzing specific use case.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-22 11:01:41 -07:00
Rob Bradford
c98bd2fd4a
.github: Add clippy check of tracing feature
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-22 18:09:31 +01:00
Rob Bradford
e53419ecfc
docs: Add documentation of tracing infrastructure
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-22 18:09:31 +01:00
Rob Bradford
5e811a6823
scripts: Add tracing visualisation script
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-22 18:09:31 +01:00
Rob Bradford
1202b9a07a
vmm: Add some tracing of boot sequence
...
Add tracing of the VM boot sequence from the point at which the request
to create a VM is received to the hand-off to the vCPU threads running.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-22 18:09:31 +01:00
Rob Bradford
b35e6f3018
tracing: Tracing infrastructure
...
Add a new feature "tracing" that enables tracing functionality via the
"tracer" crate (sadly features and crates cannot share the same name.)
Setup: tracer::start()
The main functionality is a tracer::trace_scope()! macro that will add
trace points for the duration of the scope. Tracing events are per
thread.
Finish: tracer::end() this will write the trace file (pretty printed
JSON) to a file in the current directory.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-22 18:09:31 +01:00
dependabot[bot]
56f163170c
build: Bump rustix from 0.35.9 to 0.35.10 in /fuzz
...
Bumps [rustix](https://github.com/bytecodealliance/rustix ) from 0.35.9 to 0.35.10.
- [Release notes](https://github.com/bytecodealliance/rustix/releases )
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.35.9...v0.35.10 )
---
updated-dependencies:
- dependency-name: rustix
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-22 00:23:12 +00:00
dependabot[bot]
98c461e932
build: Bump rustix from 0.35.9 to 0.35.10
...
Bumps [rustix](https://github.com/bytecodealliance/rustix ) from 0.35.9 to 0.35.10.
- [Release notes](https://github.com/bytecodealliance/rustix/releases )
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.35.9...v0.35.10 )
---
updated-dependencies:
- dependency-name: rustix
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-21 23:47:11 +00:00
Sebastien Boeuf
76dbf85b79
net: Give the user the ability to set MTU
...
Add a new "mtu" parameter to the NetConfig structure and therefore to
the --net option. This allows Cloud Hypervisor's users to define the
Maximum Transmission Unit (MTU) they want to use for the network
interface that they create.
In details, there are two main aspects. On the one hand, the TAP
interface is created with the proper MTU if it is provided. And on the
other hand the guest is made aware of the MTU through the VIRTIO
configuration. That means the MTU is properly set on both the TAP on the
host and the network interface in the guest.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-09-21 16:20:57 +02:00
dependabot[bot]
d95220108a
build: Bump once_cell from 1.14.0 to 1.15.0
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.14.0...v1.15.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-21 00:35:35 +00:00
dependabot[bot]
5a9fe9855a
build: Bump lock_api from 0.4.8 to 0.4.9
...
Bumps [lock_api](https://github.com/Amanieu/parking_lot ) from 0.4.8 to 0.4.9.
- [Release notes](https://github.com/Amanieu/parking_lot/releases )
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Amanieu/parking_lot/compare/lock_api-0.4.8...lock_api-0.4.9 )
---
updated-dependencies:
- dependency-name: lock_api
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 23:48:00 +00:00
dependabot[bot]
2d0ba3637a
build: Bump once_cell from 1.14.0 to 1.15.0 in /fuzz
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.14.0...v1.15.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 23:42:38 +00:00
Rob Bradford
fdb4b32876
build: Disable SGX build
...
This was unfortunately missing from
430bfd38be
which disabled the other builds
that rely on the bare metal systems.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-20 21:59:03 +01:00
Sebastien Boeuf
f38056fc9e
virtio-devices, vmm: Simplify virtio-mem resize operation
...
There's no need to delegate the resize operation to the virtio-mem
thread. This can come directly from the vmm thread which will use the
Mem object to update the VIRTIO configuration and trigger the interrupt
for the guest to be notified.
In order to achieve what's described above, the VirtioMemZone structure
now has a handle onto the Mem object directly. This avoids the need for
intermediate Resize and ResizeSender structures.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2022-09-20 13:43:40 +02:00
Rob Bradford
430bfd38be
build: Disable VFIO, metrics and rate limit testing
...
Bare metal x86-64 systems are offline
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-20 11:55:43 +01:00
Rob Bradford
2b53de58b3
build: Remove the exposed "cmos" feature
...
This only affects the build system; the feature was already always
compiled in with ca68b9e7a9
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-20 11:18:46 +01:00
Rob Bradford
d4d0780b89
tests: Fix aarch64 beta clippy issues
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-20 10:59:48 +01:00
Rob Bradford
a375e230b8
misc: Manual beta clippy fixes (boolean to int conversion using if)
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-20 10:59:48 +01:00
Rob Bradford
f32487f8e8
misc: Automatic beta clippy fixes
...
e.g. cargo clippy --all --tests --all-targets --fix --features=..
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-09-20 10:59:48 +01:00
Bo Chen
ab0b3f1b7b
fuzz: Add fuzzer for virtio-balloon
...
The fuzzer exercises the inflate, deflate and reporting events of
virtio-balloon via creating three queues and kicking three events.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-09-20 11:05:53 +02:00
Bo Chen
e1b483fc88
fuzz: Add fuzzer for virtio-rng
...
To make the fuzzer faster and more effective, the guest memory is
setup with a much smaller size (comparing with other virtio device
fuzzers) and a hole between the memory for holding virtio queue and
the rest of guest data. It brings two benefits: 1) avoid writing large
chunk of data from 'urandom' into the available descriptor chain (which
makes the fuzzer faster); 2) reduce substantial amount of overwrites to
the virtio queue data by the data from 'urandom (which makes the fuzzer
more deterministic and hence effective).
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-09-20 11:05:53 +02:00
Bo Chen
f815fcbb5d
fuzz: Add fuzzer for virtio-watchdog
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-09-20 11:05:53 +02:00
dependabot[bot]
6a67675442
build: Bump syn from 1.0.99 to 1.0.100
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.99 to 1.0.100.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.99...1.0.100 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 09:34:37 +01:00
dependabot[bot]
50c3aa775b
build: Bump libc from 0.2.132 to 0.2.133
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.132 to 0.2.133.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.132...0.2.133 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 01:24:56 +00:00
dependabot[bot]
14865a58a9
build: Bump env_logger from 0.9.0 to 0.9.1
...
Bumps [env_logger](https://github.com/env-logger-rs/env_logger ) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/env-logger-rs/env_logger/releases )
- [Changelog](https://github.com/env-logger-rs/env_logger/blob/main/CHANGELOG.md )
- [Commits](https://github.com/env-logger-rs/env_logger/compare/v0.9.0...v0.9.1 )
---
updated-dependencies:
- dependency-name: env_logger
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 00:40:44 +00:00
dependabot[bot]
7d5f53439c
build: Bump syn from 1.0.99 to 1.0.100 in /fuzz
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.99 to 1.0.100.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.99...1.0.100 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 00:19:54 +00:00
dependabot[bot]
5123d0b1e1
build: Bump mshv-ioctls from 0106c24
to bf85430
...
Bumps [mshv-ioctls](https://github.com/rust-vmm/mshv ) from `0106c24` to `bf85430`.
- [Release notes](https://github.com/rust-vmm/mshv/releases )
- [Commits](0106c24a26...bf85430875
)
---
updated-dependencies:
- dependency-name: mshv-ioctls
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-19 23:43:42 +00:00