Stefano Garzarella
c452d1c2f9
vsock: move VsockArgs in main.rs
...
VsockArgs is used only by main.rs, so we can move its definition
there. Let's also move the test.
Suggested-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 15:17:45 +02:00
Stefano Garzarella
f7f239e390
vsock: use pub(crate) for types used only by our binary
...
This is a binary crate and most of the types shouldn't be visible
out of this crate. Change also documentation with ///.
If we would like to export some types as part of a library in the
future, we will adjust the visibility accordingly.
Suggested-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 15:17:45 +02:00
Stefano Garzarella
a6d157f5e5
vsock: add more tests and update coverage_score
...
Add several tests to get good coverage. Unfortunately,
it's a lot of new code and not easy to test everything.
We may add more mocks and tests in the future.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 15:17:45 +02:00
Stefano Garzarella
498c7490e1
vsock: fix VhostUserVsockBackend::get_config
...
VIRTIO spec defines `guest_cid` in LE byte order.
Let's introduce VirtioVsockConfig based on the virtio-spec 1.2.
For now it contains only `guest_cid`, but in the future it could
contain other fields.
Let's also handle correctly `offset` and `size`, returning an empty
Vec if they are not valid.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 15:17:45 +02:00
Stefano Garzarella
167206dea3
vsock: try to avoid panic as much as we can
...
Instead of panic, let's propagate errors or print warnings
where we can't.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 15:17:14 +02:00
Stefano Garzarella
1605f54fab
vsock: send credit update only when needed
...
If we don't remove any bytes from the buffer, it's useless to
send a credit update since the credit hasn't changed.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:39:27 +02:00
Stefano Garzarella
5986155c8a
vsock: don't panic if "connect PORT\n" is malformed
...
Instead of panic if the local peer doesn't send "connect PORT\n"
correctly, let's print an error, ignoring the command.
Print an error message also when allocating local port fails.
Reported-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:39:27 +02:00
Stefano Garzarella
d6775cd90d
vsock: clean up comments and fix log messages
...
Remove old comments, useless code, and code commented.
Avoid println!() to print messages and replaced with dbg!(), info!(),
or error!().
Also init `env_logger` like other daemons in the main().
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:39:27 +02:00
Stefano Garzarella
8fa597e941
vsock: add SPDX-License-Identifier in each file
...
Harsha specified `license = "Apache-2.0 OR BSD-3-Clause"` in
vsock/Cargo.toml, so let's add a properly SPDX tag in the
vsock files.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:21:54 +02:00
Stefano Garzarella
df1073bf2e
vsock: use VsockPacket from the virtio-vsock crate
...
Replace our VsockPacket with the new one implemented in the
virtio-vsock crate.
Based on Alex Bennée and Laura Loghin commit:
https://github.com/stsquad/vhost-device/commit/6752266608dd
To achieve this the following changes where made:
- deleted the internal packet.rs
- convert the send_pkt/recv_pkt helpers to be BitmapSlice aware
- update push from LocalTxBuf
- tweak a few API calls due to minor diffs
Fixed tests and moved some helpers from the removed
vsock/src/packet.rs file.
Co-developed-by: Laura Loghin <lauralg@amazon.com>
Co-developed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:21:54 +02:00
Stefano Garzarella
896d346135
vsock: replace the deprecated App::from_yaml
...
clap::App::from_yaml() is deprecated since clap-3.0.0, let's
switch to clap::Parser.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:21:54 +02:00
Stefano Garzarella
a1daeec3bc
vsock: update Cargo.toml dependencies
...
Update the dependencies aligning with the other crates
in this workspace.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:21:54 +02:00
Stefano Garzarella
69882e1dfc
vsock: fix clippy warnings
...
clippy complains of some minor issues, probably because the
new version has been improved. Let's fix them.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:21:54 +02:00
Harshavardhan Unnibhavi
e20698695b
vhost-user-vsock: virtio-vsock device emulation
...
This commit introduces a vhost-user-vsock device that enables
communicaton between an application running in the guest i.e
inside a VM and an application running on the host i.e outside
the VM. The device exposes unix sockets to which the VMM and
host-side applications connect to. Applications in the guest
communicate over VM sockets. Applicaitons on the host connect to
the unix socket i.e communicate over AF_UNIX sockets.
Signed-off-by: Harshavardhan Unnibhavi <harshanavkis@gmail.com>
[sgarzare: rebased, updated Cargo.lock, updated clap version to
avoid build issues, and fixed clap issues with the new version]
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2022-10-12 14:21:54 +02:00
Viresh Kumar
b9f8d4e88f
Merge pull request #225 from rust-vmm/dependabot/cargo/syn-1.0.102
...
build(deps): bump syn from 1.0.101 to 1.0.102
2022-10-11 16:40:40 +05:30
Viresh Kumar
a0b0d96578
Merge branch 'main' into dependabot/cargo/syn-1.0.102
2022-10-11 16:31:28 +05:30
Viresh Kumar
427c011ef4
Merge pull request #224 from rust-vmm/dependabot/cargo/clap-4.0.11
...
build(deps): bump clap from 4.0.9 to 4.0.11
2022-10-11 16:29:59 +05:30
Viresh Kumar
af2bc114b1
Merge branch 'main' into dependabot/cargo/clap-4.0.11
2022-10-11 09:55:24 +05:30
Viresh Kumar
b972efccd7
Merge branch 'main' into dependabot/cargo/syn-1.0.102
2022-10-11 09:55:21 +05:30
Viresh Kumar
d6f3a9e146
Merge pull request #226 from rust-vmm/dependabot/cargo/unicode-ident-1.0.5
...
build(deps): bump unicode-ident from 1.0.4 to 1.0.5
2022-10-11 09:55:11 +05:30
dependabot[bot]
cf8f5ca5a8
build(deps): 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-10 04:07:16 +00:00
dependabot[bot]
758c6d9de5
build(deps): 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-10 04:07:11 +00:00
dependabot[bot]
92e3a8ca2f
build(deps): bump clap from 4.0.9 to 4.0.11
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.9 to 4.0.11.
- [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.11 )
---
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-10 04:07:06 +00:00
Viresh Kumar
ef7e315531
Merge pull request #215 from stefano-garzarella/use-frontend-backend
...
README: replace master with frontend
2022-10-05 21:44:13 +05:30
Mathieu Poirier
14be53d8fc
Merge branch 'main' into use-frontend-backend
2022-10-05 09:50:14 -06:00
Viresh Kumar
1cdc247614
Merge pull request #223 from rust-vmm/dependabot/cargo/clap-4.0.9
...
build(deps): bump clap from 4.0.8 to 4.0.9
2022-10-05 07:43:43 +05:30
dependabot[bot]
ff45d48450
build(deps): bump clap from 4.0.8 to 4.0.9
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.8 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](https://github.com/clap-rs/clap/compare/v4.0.8...v4.0.9 )
---
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-04 20:19:37 +00:00
Viresh Kumar
2dfd379c4c
Merge pull request #222 from rust-vmm/dependabot/cargo/libc-0.2.134
...
build(deps): bump libc from 0.2.133 to 0.2.134
2022-10-05 01:47:35 +05:30
Viresh Kumar
624a7f8372
Merge branch 'main' into dependabot/cargo/libc-0.2.134
2022-10-04 09:28:44 +05:30
Viresh Kumar
94e6ef7335
Merge pull request #221 from rust-vmm/dependabot/cargo/clap-4.0.8
...
build(deps): bump clap from 3.2.22 to 4.0.8
2022-10-04 09:28:15 +05:30
Viresh Kumar
1f5641bef1
Merge branch 'main' into dependabot/cargo/clap-4.0.8
2022-10-04 09:18:54 +05:30
Viresh Kumar
d3e45f9a68
Merge branch 'main' into dependabot/cargo/libc-0.2.134
2022-10-04 09:03:48 +05:30
Viresh Kumar
eef4025e70
Merge pull request #220 from rust-vmm/dependabot/cargo/virtio-queue-0.6.1
...
build(deps): bump virtio-queue from 0.6.0 to 0.6.1
2022-10-04 08:35:26 +05:30
Viresh Kumar
3477b05e73
Merge branch 'main' into dependabot/cargo/libc-0.2.134
2022-10-04 08:29:29 +05:30
Viresh Kumar
f920bf8ba6
Merge branch 'main' into dependabot/cargo/virtio-queue-0.6.1
2022-10-04 08:29:04 +05:30
Viresh Kumar
a1ff4cd2fe
Merge pull request #219 from rust-vmm/dependabot/cargo/proc-macro2-1.0.46
...
build(deps): bump proc-macro2 from 1.0.44 to 1.0.46
2022-10-04 08:22:12 +05:30
Viresh Kumar
f66d4b8b36
Merge branch 'main' into dependabot/cargo/libc-0.2.134
2022-10-04 08:17:53 +05:30
dependabot[bot]
9e8f2f8109
build(deps): bump libc from 0.2.133 to 0.2.134
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.133 to 0.2.134.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.133...0.2.134 )
---
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-04 02:47:00 +00:00
Viresh Kumar
84ce44a697
Merge branch 'main' into dependabot/cargo/virtio-queue-0.6.1
2022-10-04 08:16:34 +05:30
Viresh Kumar
5eb37c0d80
Merge branch 'main' into dependabot/cargo/clap-4.0.8
2022-10-04 08:16:24 +05:30
Viresh Kumar
421567b0f4
Merge branch 'main' into dependabot/cargo/proc-macro2-1.0.46
2022-10-04 08:16:17 +05:30
Viresh Kumar
95b34fd2f1
Merge pull request #218 from rust-vmm/dependabot/cargo/syn-1.0.101
...
build(deps): bump syn from 1.0.100 to 1.0.101
2022-10-04 08:16:06 +05:30
dependabot[bot]
74f77abc90
build(deps): bump clap from 3.2.22 to 4.0.8
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.2.22 to 4.0.8.
- [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/v3.2.22...v4.0.8 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-03 04:07:26 +00:00
dependabot[bot]
40628be43a
build(deps): bump virtio-queue from 0.6.0 to 0.6.1
...
Bumps [virtio-queue](https://github.com/rust-vmm/vm-virtio ) from 0.6.0 to 0.6.1.
- [Release notes](https://github.com/rust-vmm/vm-virtio/releases )
- [Commits](https://github.com/rust-vmm/vm-virtio/compare/virtio-queue-v0.6.0...virtio-queue-v0.6.1 )
---
updated-dependencies:
- dependency-name: virtio-queue
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-03 04:07:19 +00:00
dependabot[bot]
d067474164
build(deps): bump proc-macro2 from 1.0.44 to 1.0.46
...
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2 ) from 1.0.44 to 1.0.46.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases )
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.44...1.0.46 )
---
updated-dependencies:
- dependency-name: proc-macro2
dependency-type: indirect
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-03 04:07:15 +00:00
dependabot[bot]
a253237f29
build(deps): 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-10-03 04:07:11 +00:00
Viresh Kumar
352db5ccdd
Merge branch 'main' into use-frontend-backend
2022-09-28 21:36:05 +05:30
Viresh Kumar
92b8dfa414
Merge pull request #217 from rust-vmm/dependabot/cargo/thiserror-1.0.37
...
build(deps): bump thiserror from 1.0.35 to 1.0.37
2022-09-28 21:35:49 +05:30
dependabot[bot]
908fc35c85
build(deps): bump thiserror from 1.0.35 to 1.0.37
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.35 to 1.0.37.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.35...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 14:12:29 +00:00
Viresh Kumar
8bc4e7473c
Merge pull request #212 from rust-vmm/dependabot/cargo/proc-macro2-1.0.44
...
build(deps): bump proc-macro2 from 1.0.43 to 1.0.44
2022-09-28 19:41:17 +05:30