Highlights
- feat(xtask): add support for building with cargo-careful by @mkroening in #1142
- feat: allow mounting a virtiofsd share to
/
by @stlankes in #774 - feat: add
virtio-def
crate for virtio definitions by @mkroening in #1149 - feat(riscv64): fix compilation with default features and with
gem-net
by @mkroening in #1162 - feat(mm): add
DeviceAlloc
for communicating with devices by @mkroening in #1160 - feat: stabilize kernel interface by @stlankes in #1167
- feat(sys): add
sys_available_parallelism
by @mkroening in #1184 - feat(xtask): add
xtask doc
by @mkroening in #1200 - feat: rename
virtio-def
crate tovirtio-spec
by @mkroening in #1201 - feat(virtio-spec): many features for endian numbers, make feature flags little-endian by @mkroening in #1205
- feat(syscall): add
sys_shutdown
in favor ofsys_shutdown_socket
by @mkroening in #1220 - feat(virtio-net): enable
VIRTIO_NET_F_MQ
and testVIRTIO_F_RING_PACKED
by @mkroening in #1223 - feat(virtio-spec): migrate to endian-num crate by @mkroening in #1225
- feat(newlib): using kernel networking, instead of lwip by @CarlWachter in #1237
- feat(newlib): remove lwIP support by @mkroening in #1165
What's Changed
- ci: upgrade OpenSBI to version 1.4 by @mkroening in #1139
- riscv64: replace deprecated legacy extensions to SBI 2.0 extensions by @luojia65 in #1088
- fix(riscv64): remove
dbg!
invocation by @mkroening in #1143 - fix(virtio/pci): use volatile accesses for device features by @mkroening in #1146
- refactor(macro): replace
syn::parse2(quote!
withparse_quote!
by @mkroening in #1147 - ci: enable fs feature for rusty_demo by @mkroening in #1126
- chore: upgrade to nightly-2024-04-15 by @stlankes in #1148
- virtq: specify endianness by @cagatay-y in #1141
- fix(virtio/pci): put common config into volatile reference by @mkroening in #1145
- fix(aarch64): add size of
_private
toTaskTLS
allocation by @mkroening in #1155 - perf: forward default allocator methods and remove memory overprovisioning by @SFBdragon in #1045
- virtio_net: use smoltcp methods instead of hardcoding field offsets by @cagatay-y in #1161
- fix(gem-net): clippy warnings by @mkroening in #1163
- fix(x86_64): virtio-net-device (MMIO) by @mkroening in #1164
- fix(x86_64/newlib): remove unused import by @mkroening in #1169
- new: Add colored log levels by @camnwalter in #1171
- virtq: use a struct with the actual layout rather than a struct of references by @cagatay-y in #1150
- fix(microvm): explicitly disable ACPI by @mkroening in #1180
- fix(x86_64): make
CoreLocal
#[repr(Rust)]
again by @mkroening in #1172 - fix(abi): various typedefs by @mkroening in #1179
- remove typo with in debug message by @stlankes in #1183
- refactor(mm): replace
freelist
module withfree-list
crate by @mkroening in #1182 - fix(x86_64): shutdown using triple fault on all platforms by @mkroening in #1181
- fix(virtio/pci): compare capabilities length with proper struct size by @mkroening in #1185
- fix(POSIX/time): make subsecond fields signed and use
timespec
instat
by @mkroening in #1196 - Virtq refactor by @cagatay-y in #1174
- style: sort dependencies in
Cargo.toml
by @mkroening in #1198 - fix(xtask): run clippy on virtio-mmio configurations by @mkroening in #1199
- refactor(virtio): move feature definitions to
virtio-def
by @mkroening in #1197 - refactor(virtio-net): migrate header to virtio-spec by @mkroening in #1202
- refactor(virtio): migrate to
virtio-spec::FeatureBits::requirements_satisfied
by @mkroening in #1203 - Fix device notification by @stlankes in #1206
- fix conversion from IpAddress::Ipv4 to in_addr by @stlankes in #1207
- add file attributes for mounted directories by @stlankes in #1209
- build: update toolchain
nightly-2024-05-15
by @mkroening in #1208 - add option to open a directory by @stlankes in #1210
- Added no_mangle to all extern C functions by @CarlWachter in #1216
- fix(virtio-pci):
next_ptr
+cfg_ptr
offsets by @jounathaen in #1218 - fix(syscalls): use
EAI_*
constants from FreeBSD by @mkroening in #1222 - fix(syscall): always return zero on
sys_getpid
by @mkroening in #1221 - add system calls
readv
andwritev
by @stlankes in #1219 - add basic DNS support by @stlankes in #1211
- fuse: provide header and payloads separately by @cagatay-y in #1204
- add option to define the DNS servers at compile time by @stlankes in #1224
- introduce public interface to shutdown the system by @stlankes in #1227
- add interface to create a directory by @stlankes in #1228
- move all filesystem functions to crate::fs by @stlankes in #1229
- remove unneeded unwraps by @stlankes in #1230
- ci: workaround bad mio branch by @mkroening in #1236
- refactor(virtio/mmio): migrate
MmioRegisterLayout
tovirtio-spec
by @mkroening in #1231 - refactor(virtio/mmio): migrate
IsrStatusRaw
tovirtio-spec
by @mkroening in #1239 - fix(virtio): notification location calculation by @mkroening in #1238
- fix(virtqueue):
next_off
must not be shifted for notification data by @mkroening in #1240 - refactor(virtio/pci): migrate
IsrStatusRaw
tovirtio-spec
by @mkroening in #1244 - refactor(virtio): migrate
DevId
tovirtio-spec
by @mkroening in #1245 - refactor(virtio/pci): migrate
CfgType
tovirtio-spec
by @mkroening in #1246 - refactor(virtqueue): make several types smaller by @mkroening in #1241
- reduce the number of log messages by @stlankes in #1252
- fix(fuse): potential panic on unknown mode bits by @mkroening in #1251
- add warning if HERMIT_IP is set and dhcpv4 feature is enabled by @stlankes in #1254
- refactor(pci): use more of the
pci_types
crate by @mkroening in #1250 - fix(virtio/pci): remove
ComCfgRaw
by @mkroening in #1255 - build(deps): update volatile to version 0.6 by @mkroening in #1258
- chore: upgrade toolchain channel to
nightly-2024-06-01
by @mkroening in #1259 - add option to use a busy waiting within the idle loop by @stlankes in #1243
- refactor(virtio/transport): move notification location calculation into
NotifCfg
by @mkroening in #1262 - fix(x86_64/pci): incorporate function in
ConfigRegionAccess
by @mkroening in #1256 - refactor(virtio/pci): migrate PCI capabilities to virtio-spec by @mkroening in #1257
- chore: release version 0.8.0 by @mkroening in #1263
New Contributors
- @luojia65 made their first contribution in #1088
- @SFBdragon made their first contribution in #1045
- @camnwalter made their first contribution in #1171
- @CarlWachter made their first contribution in #1216
Full Changelog: v0.7.0...v0.8.0