Commit graph

433 commits

Author SHA1 Message Date
Changyuan Lyu
607db09ee5 perf(pci): remove Arc from PCI configs
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-21 22:05:17 -08:00
Changyuan Lyu
08aa5a7012 docs: update README
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-18 17:56:16 -08:00
Changyuan Lyu
e493a7cf1c fix(vm): let device builders take immutable self
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-16 22:35:54 -08:00
dependabot[bot]
396935c036 chore(deps): Bump the patches group with 2 updates
Bumps the patches group with 2 updates: [zerocopy](https://github.com/google/zerocopy) and [libc](https://github.com/rust-lang/libc).


Updates `zerocopy` from 0.8.8 to 0.8.9
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google/zerocopy/commits)

Updates `libc` from 0.2.161 to 0.2.162
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Changelog](https://github.com/rust-lang/libc/blob/0.2.162/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.161...0.2.162)

---
updated-dependencies:
- dependency-name: zerocopy
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-13 09:12:01 -08:00
Changyuan Lyu
b15f12aa19 feat(vfio)!: add parameter types for Ioas and Container
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-12 23:11:07 -08:00
Changyuan Lyu
9b4474ab63 feat(help): implement Help for array types
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-10 22:42:37 -08:00
Changyuan Lyu
022d4535b2 fix(vfio): clear the multi-function device bit
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-05 22:55:46 -08:00
Changyuan Lyu
a64c445e4c fix(vfio): calculate MSI cap size from msg control
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-11-05 22:15:06 -08:00
dependabot[bot]
e9e611ce12 chore(deps): Bump the patches group with 4 updates
Bumps the patches group with 4 updates: [serde](https://github.com/serde-rs/serde), [syn](https://github.com/dtolnay/syn), [zerocopy](https://github.com/google/zerocopy) and [flexi_logger](https://github.com/emabee/flexi_logger).


Updates `serde` from 1.0.213 to 1.0.214
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.213...v1.0.214)

Updates `syn` from 2.0.85 to 2.0.87
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.85...2.0.87)

Updates `zerocopy` from 0.8.7 to 0.8.8
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google/zerocopy/commits)

Updates `flexi_logger` from 0.29.4 to 0.29.6
- [Release notes](https://github.com/emabee/flexi_logger/releases)
- [Changelog](https://github.com/emabee/flexi_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/emabee/flexi_logger/commits)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: zerocopy
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: flexi_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 18:38:59 -08:00
Changyuan Lyu
b211146f24 chore: bump version to 0.6.0
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-29 22:01:52 -07:00
Changyuan Lyu
10a780c9eb feat(balloon): make free page reporting optional
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-29 21:49:52 -07:00
dependabot[bot]
4970920f8e ci: bump actions/cache from 4.1.1 to 4.1.2
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](3624ceb22c...6849a64899)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-28 07:52:33 -07:00
dependabot[bot]
74a7ba316e ci: bump actions/checkout from 4.2.1 to 4.2.2
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](eef61447b9...11bd71901b)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-28 07:52:18 -07:00
dependabot[bot]
34d71f3420 build(deps): bump the patches group with 4 updates
Bumps the patches group with 4 updates: [serde](https://github.com/serde-rs/serde), [proc-macro2](https://github.com/dtolnay/proc-macro2), [syn](https://github.com/dtolnay/syn) and [zerocopy](https://github.com/google/zerocopy).


Updates `serde` from 1.0.210 to 1.0.213
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.210...v1.0.213)

Updates `proc-macro2` from 1.0.88 to 1.0.89
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.88...1.0.89)

Updates `syn` from 2.0.82 to 2.0.85
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.82...2.0.85)

Updates `zerocopy` from 0.8.6 to 0.8.7
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google/zerocopy/compare/v0.8.6...v0.8.7)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: proc-macro2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: zerocopy
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-28 07:51:59 -07:00
Changyuan Lyu
3ef3eb0985 fix(vfio): open the iommu device as read-only
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:38:27 -07:00
Changyuan Lyu
7d158564f7 docs: mark supporting legacy VFIO API as done
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
a8e87c6869 fix(vfio): handle the flag NORESIZE of an IRQ
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
2cbd394f93 feat(vfio): building devices from legacy VFIO API
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
2bb4de20e7 feat(vfio): add parameter type for legacy VFIO API
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
c33baf4c61 feat(vfio): let VfioPciDev::new take a generic Device
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
339fb32e6e refactor(vfio): let VfioPciDev::new take a configured device
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
727d081e21 feat(vfio): allow specifying the path to iommu dev
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
a4d915ce60 feat(vfio): add Group and Container
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
ed76bde07b feat(vfio): add bindings for legacy VFIO APIs
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
ab304a4b60 refactor(vfio): move device ioctls to a trait
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
e30be1f41e fix(cdev): ignore detach calls if not attached yet
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
08385387c4 refactor(vfio): remove generic parameters from Cdev and Ioas
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-27 23:20:39 -07:00
Changyuan Lyu
e58f221f62 fix(pvh): check if the alignment is a power of 2
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-23 00:42:17 -07:00
Changyuan Lyu
fd0f2d826f fix: let align_up/align_down take number of bits
It ensures that the alignment is always a power of 2.

Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-23 00:42:17 -07:00
dependabot[bot]
ff2b65832e build(deps): bump the patches group with 2 updates
Bumps the patches group with 2 updates: [syn](https://github.com/dtolnay/syn) and [flexi_logger](https://github.com/emabee/flexi_logger).


Updates `syn` from 2.0.80 to 2.0.82
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.80...2.0.82)

Updates `flexi_logger` from 0.29.3 to 0.29.4
- [Changelog](https://github.com/emabee/flexi_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/emabee/flexi_logger/commits)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: flexi_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-21 08:05:32 -07:00
Changyuan Lyu
cd9bb82519 docs: update README
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-20 18:33:25 -07:00
Changyuan Lyu
f2dd1f9f79 feat(balloon): implement inflate queue
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-20 18:33:25 -07:00
Changyuan Lyu
4313406fa0 feat(balloon): implement free page reporting
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-20 18:33:25 -07:00
Changyuan Lyu
cc3d28c112 feat(virtio): skeleton of a balloon device
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-20 00:15:51 -07:00
Changyuan Lyu
01b3485a6e refactor(virtio): simplify method parameters of trait VirtioMio
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-19 22:15:29 -07:00
Changyuan Lyu
d2b2490ac6 refactor(virtio): remove activate_dev from trait Backend
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-19 22:15:29 -07:00
Changyuan Lyu
33df84a4ca refactor(virtio): add a new trait ActiveBackend
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-19 22:15:29 -07:00
dependabot[bot]
f9cb2634f9 build(deps): bump the patches group with 5 updates
Bumps the patches group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [proc-macro2](https://github.com/dtolnay/proc-macro2) | `1.0.87` | `1.0.88` |
| [syn](https://github.com/dtolnay/syn) | `2.0.79` | `2.0.80` |
| [zerocopy](https://github.com/google/zerocopy) | `0.8.5` | `0.8.6` |
| [libc](https://github.com/rust-lang/libc) | `0.2.159` | `0.2.161` |
| [io-uring](https://github.com/tokio-rs/io-uring) | `0.7.0` | `0.7.1` |


Updates `proc-macro2` from 1.0.87 to 1.0.88
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.87...1.0.88)

Updates `syn` from 2.0.79 to 2.0.80
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.79...2.0.80)

Updates `zerocopy` from 0.8.5 to 0.8.6
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google/zerocopy/commits)

Updates `libc` from 0.2.159 to 0.2.161
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Changelog](https://github.com/rust-lang/libc/blob/0.2.161/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.159...0.2.161)

Updates `io-uring` from 0.7.0 to 0.7.1
- [Commits](https://github.com/tokio-rs/io-uring/commits)

---
updated-dependencies:
- dependency-name: proc-macro2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: zerocopy
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
- dependency-name: io-uring
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patches
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-19 19:56:23 -07:00
Changyuan Lyu
73f540f513 chore: group dependabot PRs
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-19 18:35:15 -07:00
dependabot[bot]
0ce7db8610
build(deps): bump zerocopy from 0.7.35 to 0.8.5
Bumps [zerocopy](https://github.com/google/zerocopy) from 0.7.35 to 0.8.5.
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google/zerocopy/compare/v0.7.35...v0.8.5)

---
updated-dependencies:
- dependency-name: zerocopy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-19 18:06:08 -07:00
dependabot[bot]
8d89963dfa build(deps): bump proc-macro2 from 1.0.86 to 1.0.87
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2) from 1.0.86 to 1.0.87.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.86...1.0.87)

---
updated-dependencies:
- dependency-name: proc-macro2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-19 11:14:07 -07:00
dependabot[bot]
944175e6a9 build(deps): bump clap from 4.5.19 to 4.5.20
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.19 to 4.5.20.
- [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/clap_complete-v4.5.19...clap_complete-v4.5.20)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-19 11:13:59 -07:00
dependabot[bot]
6f61cd6630 build(deps): bump flexi_logger from 0.29.1 to 0.29.3
Bumps [flexi_logger](https://github.com/emabee/flexi_logger) from 0.29.1 to 0.29.3.
- [Changelog](https://github.com/emabee/flexi_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/emabee/flexi_logger/commits)

---
updated-dependencies:
- dependency-name: flexi_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-19 11:13:49 -07:00
dependabot[bot]
d70cc985b4 ci: bump actions/cache from 4.1.0 to 4.1.1
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](2cdf405574...3624ceb22c)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-19 11:13:35 -07:00
dependabot[bot]
e27bd2779b ci: bump actions/checkout from 4.2.0 to 4.2.1
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.0 to 4.2.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](d632683dd7...eef61447b9)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-19 11:13:17 -07:00
dependabot[bot]
1e20ed37a5 build(deps): bump flexi_logger from 0.29.0 to 0.29.1
Bumps [flexi_logger](https://github.com/emabee/flexi_logger) from 0.29.0 to 0.29.1.
- [Changelog](https://github.com/emabee/flexi_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/emabee/flexi_logger/commits)

---
updated-dependencies:
- dependency-name: flexi_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 21:42:04 -07:00
dependabot[bot]
115fc1368d ci: bump actions/cache from 4.0.2 to 4.1.0
Bumps [actions/cache](https://github.com/actions/cache) from 4.0.2 to 4.1.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](0c45773b62...2cdf405574)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 21:41:53 -07:00
dependabot[bot]
a7f14485c0 build(deps): bump clap from 4.5.18 to 4.5.19
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.18 to 4.5.19.
- [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/clap_complete-v4.5.18...clap_complete-v4.5.19)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 21:41:43 -07:00
Changyuan Lyu
acdfb5dbca fix(virtio): monitor ioeventfds with IORING_OP_POLL_ADD
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-10-06 23:05:45 -07:00
dependabot[bot]
bc40ba6c71 build(deps): bump io-uring from 0.6.4 to 0.7.0
Bumps [io-uring](https://github.com/tokio-rs/io-uring) from 0.6.4 to 0.7.0.
- [Commits](https://github.com/tokio-rs/io-uring/commits)

---
updated-dependencies:
- dependency-name: io-uring
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 10:02:08 -07:00