Samuel Ortiz
652b60320d
vfio: Use the vfio-binding FAM wrappers
...
It's less unsafe and makes the code more readable.
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2020-01-31 15:09:11 +01:00
dependabot-preview[bot]
31c3685117
build(deps): bump micro_http from e5ef374
to 1eb80f8
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `e5ef374` to `1eb80f8`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](e5ef374c8e...1eb80f8d1b
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-31 07:55:08 +00:00
dependabot-preview[bot]
8dfb79e077
build(deps): bump vm-memory from df6207f
to d6229fc
...
Bumps [vm-memory](https://github.com/rust-vmm/vm-memory ) from `df6207f` to `d6229fc`.
- [Release notes](https://github.com/rust-vmm/vm-memory/releases )
- [Commits](df6207f1c0...d6229fc5bd
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-31 07:54:31 +00:00
dependabot-preview[bot]
e99b64097a
build(deps): bump regex-syntax from 0.6.13 to 0.6.14
...
Bumps [regex-syntax](https://github.com/rust-lang/regex ) from 0.6.13 to 0.6.14.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-31 00:03:28 +00:00
dependabot-preview[bot]
92b3764553
build(deps): bump openssl-sys from 0.9.53 to 0.9.54
...
Bumps [openssl-sys](https://github.com/sfackler/rust-openssl ) from 0.9.53 to 0.9.54.
- [Release notes](https://github.com/sfackler/rust-openssl/releases )
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.53...openssl-sys-v0.9.54 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-30 17:20:30 +00:00
dependabot-preview[bot]
de91c30cd3
build(deps): bump micro_http from 9e68aa4
to e5ef374
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `9e68aa4` to `e5ef374`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](9e68aa4d9d...e5ef374c8e
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-30 17:01:33 +00:00
dependabot-preview[bot]
655d9cdb0d
build(deps): bump smallvec from 1.1.0 to 1.2.0
...
Bumps [smallvec](https://github.com/servo/rust-smallvec ) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/servo/rust-smallvec/releases )
- [Commits](https://github.com/servo/rust-smallvec/compare/v1.1.0...v1.2.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-30 01:54:42 +00:00
dependabot-preview[bot]
74ab468bb4
build(deps): bump backtrace from 0.3.42 to 0.3.43
...
Bumps [backtrace](https://github.com/rust-lang/backtrace-rs ) from 0.3.42 to 0.3.43.
- [Release notes](https://github.com/rust-lang/backtrace-rs/releases )
- [Commits](https://github.com/rust-lang/backtrace-rs/compare/0.3.42...0.3.43 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-29 22:59:26 +00:00
dependabot-preview[bot]
1651cc3953
build(deps): bump kvm-ioctls from 0.4.0 to 0.5.0
...
Bumps [kvm-ioctls](https://github.com/rust-vmm/kvm-ioctls ) from 0.4.0 to 0.5.0.
- [Release notes](https://github.com/rust-vmm/kvm-ioctls/releases )
- [Changelog](https://github.com/rust-vmm/kvm-ioctls/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-vmm/kvm-ioctls/compare/v0.4.0...v0.5.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-29 10:22:51 +00:00
dependabot-preview[bot]
362942fa6e
build(deps): bump micro_http from 53cf1ba
to 9e68aa4
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `53cf1ba` to `9e68aa4`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](53cf1bacad...9e68aa4d9d
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-29 07:06:52 +00:00
dependabot-preview[bot]
b5992fe90b
build(deps): bump thiserror from 1.0.9 to 1.0.10
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.9 to 1.0.10.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.9...1.0.10 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-28 20:42:12 +00:00
dependabot-preview[bot]
ac8e4b9cb6
build(deps): bump vm-memory from 8a606cd
to df6207f
...
Bumps [vm-memory](https://github.com/rust-vmm/vm-memory ) from `8a606cd` to `df6207f`.
- [Release notes](https://github.com/rust-vmm/vm-memory/releases )
- [Commits](8a606cd838...df6207f1c0
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-28 06:49:55 +00:00
dependabot-preview[bot]
45d43f9441
build(deps): bump micro_http from af25399
to 53cf1ba
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `af25399` to `53cf1ba`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](af25399667...53cf1bacad
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-28 06:49:37 +00:00
dependabot-preview[bot]
91747094ae
build(deps): bump arrayref from 0.3.5 to 0.3.6
...
Bumps [arrayref](https://github.com/droundy/arrayref ) from 0.3.5 to 0.3.6.
- [Release notes](https://github.com/droundy/arrayref/releases )
- [Commits](https://github.com/droundy/arrayref/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-27 08:56:17 +00:00
dependabot-preview[bot]
90810a9691
build(deps): bump micro_http from 1f931c6
to af25399
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `1f931c6` to `af25399`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](1f931c6649...af25399667
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-27 08:07:15 +00:00
dependabot-preview[bot]
16af54e583
build(deps): bump signal-hook from 0.1.12 to 0.1.13
...
Bumps [signal-hook](https://github.com/vorner/signal-hook ) from 0.1.12 to 0.1.13.
- [Release notes](https://github.com/vorner/signal-hook/releases )
- [Changelog](https://github.com/vorner/signal-hook/blob/master/CHANGELOG.md )
- [Commits](https://github.com/vorner/signal-hook/compare/v0.1.12...v0.1.13 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-26 13:29:47 +00:00
dependabot-preview[bot]
4ff972c329
build(deps): bump ssh2 from 0.6.0 to 0.7.1
...
Bumps [ssh2](https://github.com/alexcrichton/ssh2-rs ) from 0.6.0 to 0.7.1.
- [Release notes](https://github.com/alexcrichton/ssh2-rs/releases )
- [Commits](https://github.com/alexcrichton/ssh2-rs/compare/0.6.0...0.7.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-26 01:55:04 +00:00
dependabot-preview[bot]
3508440684
build(deps): bump itoa from 0.4.4 to 0.4.5
...
Bumps [itoa](https://github.com/dtolnay/itoa ) from 0.4.4 to 0.4.5.
- [Release notes](https://github.com/dtolnay/itoa/releases )
- [Commits](https://github.com/dtolnay/itoa/compare/0.4.4...0.4.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-25 00:14:23 +00:00
dependabot-preview[bot]
0ea6406d5b
build(deps): bump vm-memory from beaf215
to 8a606cd
...
Bumps [vm-memory](https://github.com/rust-vmm/vm-memory ) from `beaf215` to `8a606cd`.
- [Release notes](https://github.com/rust-vmm/vm-memory/releases )
- [Commits](beaf215905...8a606cd838
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-24 12:32:16 +00:00
dependabot-preview[bot]
6475052692
build(deps): bump micro_http from 1db1bbd
to 1f931c6
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `1db1bbd` to `1f931c6`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](1db1bbd40d...1f931c6649
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-24 06:47:58 +00:00
Sebastien Boeuf
0042f1de75
ioapic: Rely fully on the InterruptSourceGroup to manage interrupts
...
This commit relies on the interrupt manager and the resulting interrupt
source group to abstract the knowledge about KVM and how interrupts are
updated and delivered.
This allows the entire "devices" crate to be freed from kvm_ioctls and
kvm_bindings dependencies.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-23 11:20:08 +00:00
Sebastien Boeuf
29e668c302
cargo: Update Cargo.lock
...
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-23 11:20:08 +00:00
Rob Bradford
9fd187c9fe
vhost_user_net: Split launching backend into its own function
...
Split the basic launching functionality into its own function in the
newly added vhost_user_net crate.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2020-01-23 10:30:06 +00:00
Rob Bradford
1dd2451895
vhost_user_block: Refactor vhost_user_block backend code into a new crate
...
Extract the majority of the code that provides the vhost-user-block
backend into its own crate and port the binary to use it.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2020-01-23 10:30:06 +00:00
Rob Bradford
fb763c4043
vhost_user_net: Refactor vhost_user_net backend code into a new crate
...
Extract the majority of the code that provides the vhost-user-net
backend into its own crate and port the binary to use it.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2020-01-23 10:30:06 +00:00
dependabot-preview[bot]
032b8e4c1d
build(deps): bump micro_http from ebc15f2
to 1db1bbd
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `ebc15f2` to `1db1bbd`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](ebc15f2eac...1db1bbd40d
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-23 06:44:46 +00:00
dependabot-preview[bot]
204f05fdf1
build(deps): bump serde_json from 1.0.44 to 1.0.45
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.44 to 1.0.45.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.44...v1.0.45 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-23 06:14:06 +00:00
dependabot-preview[bot]
7ee9ecaaf4
build(deps): bump vmm-sys-util from 0.3.1 to 0.4.0
...
Bumps [vmm-sys-util](https://github.com/rust-vmm/vmm-sys-util ) from 0.3.1 to 0.4.0.
- [Release notes](https://github.com/rust-vmm/vmm-sys-util/releases )
- [Changelog](https://github.com/rust-vmm/vmm-sys-util/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-vmm/vmm-sys-util/compare/v0.3.1...v0.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-22 14:10:19 +00:00
dependabot-preview[bot]
503e047c3a
build(deps): bump redox_users from 0.3.3 to 0.3.4
...
Bumps redox_users from 0.3.3 to 0.3.4.
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-22 07:39:39 +00:00
Sebastien Boeuf
75e22ff34e
vmm: Use LegacyUserspaceInterruptGroup for serial device
...
This commit replaces the way legacy interrupts were handled with the
brand new implementation of the legacy InterruptSourceGroup for KVM.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-21 10:44:48 +01:00
dependabot-preview[bot]
9fab9bc645
build(deps): bump micro_http from f77960b
to ebc15f2
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `f77960b` to `ebc15f2`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](f77960b81e...ebc15f2eac
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-21 06:54:50 +00:00
dependabot-preview[bot]
9fe6ece262
build(deps): bump redox_users from 0.3.1 to 0.3.3
...
Bumps redox_users from 0.3.1 to 0.3.3.
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 21:47:15 +00:00
dependabot-preview[bot]
c27be842e4
build(deps): bump syn from 1.0.13 to 1.0.14
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.13 to 1.0.14.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.13...1.0.14 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 10:21:53 +00:00
dependabot-preview[bot]
9731be1126
build(deps): bump remain from 0.2.0 to 0.2.1
...
Bumps [remain](https://github.com/dtolnay/remain ) from 0.2.0 to 0.2.1.
- [Release notes](https://github.com/dtolnay/remain/releases )
- [Commits](https://github.com/dtolnay/remain/compare/0.2.0...0.2.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 08:52:00 +00:00
dependabot-preview[bot]
eedfb36c66
build(deps): bump micro_http from 6327290
to f77960b
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `6327290` to `f77960b`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](6327290424...f77960b81e
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 07:10:42 +00:00
Sebastien Boeuf
8049666eff
vm-virtio: Cleanup from kvm_iotcls and kvm_bindings dependencies
...
Now that KVM specific interrupts are handled through InterruptManager
trait implementation, the vm-virtio crate does not need to rely on
kvm_ioctls and kvm_bindings crates.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sebastien Boeuf
50a4c16d34
pci: Cleanup the crate from kvm_iotcls and kvm_bindings dependencies
...
Now that KVM specific interrupts are handled through InterruptManager
trait implementation, the pci crate does not need to rely on kvm_ioctls
and kvm_bindings crates.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sebastien Boeuf
4bb12a2d8d
interrupt: Reorganize all interrupt management with InterruptManager
...
Based on all the previous changes, we can at this point replace the
entire interrupt management with the implementation of InterruptManager
and InterruptSourceGroup traits.
By using KvmInterruptManager from the DeviceManager, we can provide both
VirtioPciDevice and VfioPciDevice a way to pick the kind of
InterruptSourceGroup they want to create. Because they choose the type
of interrupt to be MSI/MSI-X, they will be given a MsiInterruptGroup.
Both MsixConfig and MsiConfig are responsible for the update of the GSI
routes, which is why, by passing the MsiInterruptGroup to them, they can
still perform the GSI route management without knowing implementation
details. That's where the InterruptSourceGroup is powerful, as it
provides a generic way to manage interrupt, no matter the type of
interrupt and no matter which hypervisor might be in use.
Once the full replacement has been achieved, both SystemAllocator and
KVM specific dependencies can be removed.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sebastien Boeuf
11d4d57c06
vm-device: Introduce InterruptManager and InterruptSourceGroup traits
...
These new traits are meant to abstract the knowledge about the
hypervisor and the type of interrupt being used from the perspective
of the devices.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sebastien Boeuf
2381f32ae0
msix: Add gsi_msi_routes to MsixConfig
...
Because MsixConfig will be responsible for updating KVM GSI routes at
some point, it is necessary that it can access the list of routes
contained by gsi_msi_routes.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sebastien Boeuf
9b60fcdc39
msix: Add VmFd to MsixConfig
...
Because MsixConfig will be responsible for updating the KVM GSI routes
at some point, it must have access to the VmFd to invoke the KVM ioctl
KVM_SET_GSI_ROUTING.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sebastien Boeuf
f77d2c2d16
pci: Add some KVM and interrupt utilities to the crate
...
In order to anticipate the need for both msi.rs and msix.rs to rely on
some KVM utils and InterruptRoute structure to handle the update of the
KVM GSI routes, this commit adds these utilities directly to the pci
crate. So far, these were exclusively used by the vfio crate, which is
why there were located there.
Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2020-01-17 23:43:45 +01:00
Sergio Lopez
a14aee9213
qcow: Use RawFile as backend instead of File
...
Use RawFile as backend instead of File. This allows us to abstract
the access to the actual image with a specialized layer, so we have a
place where we can deal with the low-level peculiarities.
Signed-off-by: Sergio Lopez <slp@redhat.com>
2020-01-17 17:28:44 +00:00
dependabot-preview[bot]
1324aa451f
build(deps): bump proc-macro2 from 1.0.7 to 1.0.8
...
Bumps [proc-macro2](https://github.com/alexcrichton/proc-macro2 ) from 1.0.7 to 1.0.8.
- [Release notes](https://github.com/alexcrichton/proc-macro2/releases )
- [Commits](https://github.com/alexcrichton/proc-macro2/compare/1.0.7...1.0.8 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-17 06:58:27 +00:00
dependabot-preview[bot]
dcb6d02b98
build(deps): bump micro_http from db75e88
to 6327290
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `db75e88` to `6327290`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](db75e88e9e...6327290424
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-17 06:58:10 +00:00
dependabot-preview[bot]
cde2c4449b
build(deps): bump backtrace from 0.3.41 to 0.3.42
...
Bumps [backtrace](https://github.com/rust-lang/backtrace-rs ) from 0.3.41 to 0.3.42.
- [Release notes](https://github.com/rust-lang/backtrace-rs/releases )
- [Commits](https://github.com/rust-lang/backtrace-rs/compare/0.3.41...0.3.42 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-16 10:59:19 +00:00
dependabot-preview[bot]
d8adf6a6d7
build(deps): bump micro_http from 52e21d0
to db75e88
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `52e21d0` to `db75e88`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](52e21d0f9e...db75e88e9e
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-16 06:38:18 +00:00
Rob Bradford
8b500d7873
deps: Bump vm-memory and linux-loader version
...
The function GuestMemory::end_addr() has been renamed to last_addr()
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2020-01-15 20:21:22 +01:00
Rob Bradford
7310ab6fa7
devices, vmm: Use a bit field for ACPI GED interrupt type
...
Use independent bits for storing whether there is a CPU or memory device
changed when reporting changes via ACPI GED interrupt. This prevents a
later notification squashing an earlier one and ensure that hotplugging
both CPU and memory at the same time succeeds.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2020-01-15 20:21:22 +01:00
dependabot-preview[bot]
281b99af0a
build(deps): bump micro_http from 803c8fa
to 52e21d0
...
Bumps [micro_http](https://github.com/firecracker-microvm/firecracker ) from `803c8fa` to `52e21d0`.
- [Release notes](https://github.com/firecracker-microvm/firecracker/releases )
- [Commits](803c8fae14...52e21d0f9e
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-15 07:26:59 +00:00