diff --git a/Cargo.lock b/Cargo.lock index c88ca2d2ce1..1733e9ac749 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9,7 +9,7 @@ dependencies = [ "displaydoc", "thiserror", "vm-memory", - "zerocopy", + "zerocopy 0.8.2", ] [[package]] @@ -119,9 +119,9 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "aws-lc-fips-sys" -version = "0.12.11" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d41a5d02120c5eca009507574fa0d4885fa370cbda6b561d91ba463c3025a7" +checksum = "ec4795bbabc13643a8b3532184041ab41dec5740046aa15734428219cb9a0bfc" dependencies = [ "bindgen 0.69.4", "cmake", @@ -133,9 +133,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f95446d919226d587817a7d21379e6eb099b97b45110a7f272a444ca5c54070" +checksum = "cdd82dba44d209fddb11c190e0a94b78651f95299598e472215667417a03ff1d" dependencies = [ "aws-lc-fips-sys", "aws-lc-sys", @@ -147,9 +147,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.21.2" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3ddc4a5b231dd6958b140ff3151b6412b3f4321fab354f399eec8f14b06df62" +checksum = "df7a4168111d7eb622a31b214057b8509c0a7e1794f44c546d742330dc793972" dependencies = [ "bindgen 0.69.4", "cc", @@ -254,9 +254,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.1.23" +version = "1.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bbb537bb4a30b90362caddba8f360c0a56bc13d3a5570028e7197204cb54a17" +checksum = "2e80e3b6a3ab07840e1cae9b0666a63970dc28e8ed5ffbcdacbfc760c281bfc1" dependencies = [ "jobserver", "libc", @@ -334,9 +334,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.18" +version = "4.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0956a43b323ac1afaffc053ed5c4b7c1f1800bacd1683c353aabbb752515dd3" +checksum = "7be5744db7978a28d9df86a214130d106a89ce49644cbc4e3f0c22c3fba30615" dependencies = [ "clap_builder", "clap_derive", @@ -353,9 +353,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.18" +version = "4.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d72166dd41634086d5803a47eb71ae740e61d84709c36f3c34110173db3961b" +checksum = "a5fbc17d3ef8278f55b282b2a2e75ae6f6c7d4bb70ed3d0382375104bfafdb4b" dependencies = [ "anstream", "anstyle", @@ -676,9 +676,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" [[package]] name = "heck" @@ -709,9 +709,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "indexmap" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", "hashbrown", @@ -797,7 +797,7 @@ checksum = "2efe3f1a4437bffe000e6297a593b98184213cd27486776c335f95ab53d48e3a" dependencies = [ "serde", "vmm-sys-util", - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -969,12 +969,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.1" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" -dependencies = [ - "portable-atomic", -] +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "oorandom" @@ -1012,19 +1009,13 @@ dependencies = [ "universal-hash", ] -[[package]] -name = "portable-atomic" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" - [[package]] name = "ppv-lite86" version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -1039,9 +1030,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a" dependencies = [ "unicode-ident", ] @@ -1579,7 +1570,7 @@ dependencies = [ "vm-memory", "vm-superio", "vmm-sys-util", - "zerocopy", + "zerocopy 0.8.2", ] [[package]] @@ -1751,7 +1742,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdf8d0ac51277f0e70d6dcb000b7bfa817968d66df9f5772e731a1d1bc6fc5c6" +dependencies = [ + "zerocopy-derive 0.8.2", ] [[package]] @@ -1765,6 +1765,17 @@ dependencies = [ "syn", ] +[[package]] +name = "zerocopy-derive" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2cf1fea9437ee18b719f41c597b00c1745d7ff77184daf6ac8c61110a0115161" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "zeroize" version = "1.8.1" diff --git a/src/acpi-tables/Cargo.toml b/src/acpi-tables/Cargo.toml index c13c05cc3f0..f4c6dc13e26 100644 --- a/src/acpi-tables/Cargo.toml +++ b/src/acpi-tables/Cargo.toml @@ -10,7 +10,7 @@ license = "Apache-2.0" displaydoc = "0.2.5" thiserror = "1.0.64" vm-memory = { version = "0.15.0", features = ["backend-mmap", "backend-bitmap"] } -zerocopy = { version = "0.7.35", features = ["derive"] } +zerocopy = { version = "0.8.2", features = ["derive"] } [lib] bench = false diff --git a/src/acpi-tables/src/dsdt.rs b/src/acpi-tables/src/dsdt.rs index d42b261787b..49b05918937 100644 --- a/src/acpi-tables/src/dsdt.rs +++ b/src/acpi-tables/src/dsdt.rs @@ -4,7 +4,7 @@ use std::mem::size_of; use vm_memory::{Address, Bytes, GuestAddress, GuestMemory}; -use zerocopy::AsBytes; +use zerocopy::IntoBytes; use crate::{checksum, AcpiError, Result, Sdt, SdtHeader}; diff --git a/src/acpi-tables/src/fadt.rs b/src/acpi-tables/src/fadt.rs index 302e41cddc5..5a3a8e5694b 100644 --- a/src/acpi-tables/src/fadt.rs +++ b/src/acpi-tables/src/fadt.rs @@ -5,7 +5,7 @@ use vm_memory::{Bytes, GuestAddress, GuestMemory}; use zerocopy::little_endian::{U16, U32, U64}; -use zerocopy::AsBytes; +use zerocopy::{Immutable, IntoBytes}; use crate::{checksum, GenericAddressStructure, Result, Sdt, SdtHeader}; @@ -42,7 +42,7 @@ pub const FADT_F_HW_REDUCED_ACPI: u8 = 20; /// More information about this table can be found in the ACPI specification: /// https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html#fixed-acpi-description-table-fadt #[repr(packed)] -#[derive(Debug, Copy, Clone, Default, AsBytes)] +#[derive(Debug, Copy, Clone, Default, IntoBytes, Immutable)] pub struct Fadt { header: SdtHeader, firmware_control: U32, diff --git a/src/acpi-tables/src/lib.rs b/src/acpi-tables/src/lib.rs index b815783ee14..301a2d1cc95 100644 --- a/src/acpi-tables/src/lib.rs +++ b/src/acpi-tables/src/lib.rs @@ -20,7 +20,7 @@ pub use madt::Madt; pub use rsdp::Rsdp; pub use xsdt::Xsdt; use zerocopy::little_endian::{U32, U64}; -use zerocopy::AsBytes; +use zerocopy::{Immutable, IntoBytes}; // This is the creator ID that we will embed in ACPI tables that are created using this crate. const FC_ACPI_CREATOR_ID: [u8; 4] = *b"FCAT"; @@ -50,7 +50,7 @@ pub type Result = std::result::Result; /// ACPI type representing memory addresses #[repr(packed)] -#[derive(AsBytes, Clone, Copy, Debug, Default)] +#[derive(IntoBytes, Immutable, Clone, Copy, Debug, Default)] pub struct GenericAddressStructure { pub address_space_id: u8, pub register_bit_width: u8, @@ -79,7 +79,7 @@ impl GenericAddressStructure { /// Header included in all System Descriptor Tables #[repr(packed)] -#[derive(Clone, Debug, Copy, Default, AsBytes)] +#[derive(Clone, Debug, Copy, Default, IntoBytes, Immutable)] pub struct SdtHeader { pub signature: [u8; 4], pub length: U32, diff --git a/src/acpi-tables/src/madt.rs b/src/acpi-tables/src/madt.rs index 1c3eb765701..28f5c108b40 100644 --- a/src/acpi-tables/src/madt.rs +++ b/src/acpi-tables/src/madt.rs @@ -7,7 +7,7 @@ use std::mem::size_of; use vm_memory::{Address, Bytes, GuestAddress, GuestMemory}; use zerocopy::little_endian::U32; -use zerocopy::AsBytes; +use zerocopy::{Immutable, IntoBytes}; use crate::{checksum, AcpiError, Result, Sdt, SdtHeader}; @@ -18,7 +18,7 @@ const MADT_CPU_ENABLE_FLAG: u32 = 0; // everything with an underscore prefix #[allow(dead_code)] #[repr(packed)] -#[derive(Copy, Clone, Debug, Default, AsBytes)] +#[derive(Copy, Clone, Debug, Default, IntoBytes, Immutable)] pub struct LocalAPIC { r#type: u8, length: u8, @@ -44,7 +44,7 @@ impl LocalAPIC { // everything with an underscore prefix #[allow(dead_code)] #[repr(packed)] -#[derive(Copy, Clone, Debug, Default, AsBytes)] +#[derive(Copy, Clone, Debug, Default, IntoBytes, Immutable)] pub struct IoAPIC { r#type: u8, length: u8, @@ -72,7 +72,7 @@ impl IoAPIC { // everything with an underscore prefix #[allow(dead_code)] #[repr(packed)] -#[derive(Debug, AsBytes)] +#[derive(Debug, IntoBytes, Immutable)] struct MadtHeader { sdt: SdtHeader, base_address: U32, diff --git a/src/acpi-tables/src/rsdp.rs b/src/acpi-tables/src/rsdp.rs index aaf6fa5c051..aa413b3cdfb 100644 --- a/src/acpi-tables/src/rsdp.rs +++ b/src/acpi-tables/src/rsdp.rs @@ -6,7 +6,7 @@ use vm_memory::{Bytes, GuestAddress, GuestMemory}; use zerocopy::little_endian::{U32, U64}; -use zerocopy::AsBytes; +use zerocopy::{Immutable, IntoBytes}; use crate::{checksum, Result, Sdt}; @@ -22,7 +22,7 @@ use crate::{checksum, Result, Sdt}; /// More information about this structure can be found in the ACPI specification: /// https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html#root-system-description-pointer-rsdp #[repr(packed)] -#[derive(Clone, Copy, Debug, Default, AsBytes)] +#[derive(Clone, Copy, Debug, Default, IntoBytes, Immutable)] pub struct Rsdp { signature: [u8; 8], checksum: u8, diff --git a/src/acpi-tables/src/xsdt.rs b/src/acpi-tables/src/xsdt.rs index ff301fb9843..ed6798c1137 100644 --- a/src/acpi-tables/src/xsdt.rs +++ b/src/acpi-tables/src/xsdt.rs @@ -6,7 +6,7 @@ use std::mem::size_of; use vm_memory::{Address, Bytes, GuestAddress, GuestMemory}; -use zerocopy::AsBytes; +use zerocopy::IntoBytes; use crate::{checksum, AcpiError, Result, Sdt, SdtHeader}; diff --git a/src/clippy-tracing/Cargo.toml b/src/clippy-tracing/Cargo.toml index 3d8e3dc17cd..792b98bbff9 100644 --- a/src/clippy-tracing/Cargo.toml +++ b/src/clippy-tracing/Cargo.toml @@ -10,9 +10,9 @@ name = "clippy-tracing" bench = false [dependencies] -clap = { version = "4.5.18", features = ["derive"] } +clap = { version = "4.5.19", features = ["derive"] } itertools = "0.13.0" -proc-macro2 = { version = "1.0.86", features = ["span-locations"] } +proc-macro2 = { version = "1.0.87", features = ["span-locations"] } quote = "1.0.37" syn = { version = "2.0.79", features = ["full", "extra-traits", "visit", "visit-mut", "printing"] } walkdir = "2.5.0" diff --git a/src/cpu-template-helper/Cargo.toml b/src/cpu-template-helper/Cargo.toml index e3c9e2337fe..5e318c96955 100644 --- a/src/cpu-template-helper/Cargo.toml +++ b/src/cpu-template-helper/Cargo.toml @@ -10,7 +10,7 @@ name = "cpu-template-helper" bench = false [dependencies] -clap = { version = "4.5.18", features = ["derive", "string"] } +clap = { version = "4.5.19", features = ["derive", "string"] } displaydoc = "0.2.5" libc = "0.2.159" log-instrument = { path = "../log-instrument", optional = true } diff --git a/src/log-instrument-macros/Cargo.toml b/src/log-instrument-macros/Cargo.toml index bbc228e06ef..7803635432f 100644 --- a/src/log-instrument-macros/Cargo.toml +++ b/src/log-instrument-macros/Cargo.toml @@ -11,7 +11,7 @@ proc-macro = true bench = false [dependencies] -proc-macro2 = "1.0.86" +proc-macro2 = "1.0.87" quote = "1.0.37" syn = { version = "2.0.79", features = ["full", "extra-traits"] } diff --git a/src/snapshot-editor/Cargo.toml b/src/snapshot-editor/Cargo.toml index 481c6672991..d18e3ebc10f 100644 --- a/src/snapshot-editor/Cargo.toml +++ b/src/snapshot-editor/Cargo.toml @@ -10,7 +10,7 @@ name = "snapshot-editor" bench = false [dependencies] -clap = { version = "4.5.18", features = ["derive", "string"] } +clap = { version = "4.5.19", features = ["derive", "string"] } displaydoc = "0.2.5" fc_utils = { package = "utils", path = "../utils" } diff --git a/src/vmm/Cargo.toml b/src/vmm/Cargo.toml index 52927579756..88a421136ad 100644 --- a/src/vmm/Cargo.toml +++ b/src/vmm/Cargo.toml @@ -11,7 +11,7 @@ bench = false [dependencies] acpi_tables = { path = "../acpi-tables" } aes-gcm = { version = "0.10.1", default-features = false, features = ["aes"] } -aws-lc-rs = { version = "1.9.0", features = ["bindgen"] } +aws-lc-rs = { version = "1.10.0", features = ["bindgen"] } base64 = "0.22.1" bincode = "1.2.1" bitflags = "2.6.0" @@ -43,7 +43,7 @@ vm-allocator = "0.1.0" vm-memory = { version = "0.15.0", features = ["backend-mmap", "backend-bitmap"] } vm-superio = "0.8.0" vmm-sys-util = { version = "0.12.1", features = ["with-serde"] } -zerocopy = { version = "0.7.35" } +zerocopy = { version = "0.8.2" } [target.'cfg(target_arch = "aarch64")'.dependencies] vm-fdt = "0.3.0" diff --git a/src/vmm/src/acpi/x86_64.rs b/src/vmm/src/acpi/x86_64.rs index 0d64b6d5f26..2f06c35264f 100644 --- a/src/vmm/src/acpi/x86_64.rs +++ b/src/vmm/src/acpi/x86_64.rs @@ -10,7 +10,7 @@ use acpi_tables::fadt::{ use acpi_tables::madt::{IoAPIC, LocalAPIC}; use acpi_tables::Fadt; use vm_memory::GuestAddress; -use zerocopy::AsBytes; +use zerocopy::IntoBytes; use crate::arch::x86_64::layout; use crate::device_manager::legacy::PortIODeviceManager;