From c6fa73d76fd7df866c30849a9aa37c40f76ad4c2 Mon Sep 17 00:00:00 2001 From: Allen Webb Date: Tue, 13 Jul 2021 12:03:11 -0500 Subject: [PATCH] Fix clippy warnings and Cargo.lock This fixes: * version mismatches in Cargo.lock * style issues * implementations of Into that should be From * deprecated protobuf APIs It also adds RUST_BACKTRACE=1 to the kokoro tests. BUG=None TEST=./bin/preupload-clippy Change-Id: I8e9157c903f2080a5fdcc4d3e4ed72fbad41c64f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3024427 Auto-Submit: Allen Webb Tested-by: kokoro Reviewed-by: Daniel Verkamp Commit-Queue: Allen Webb --- Cargo.lock | 176 +++++++++++++++++++++++---------------- base/src/ioctl.rs | 12 +++ base/src/mmap.rs | 4 +- base/src/shm.rs | 6 +- base/src/tube.rs | 6 +- ci/test_runner.py | 2 + cros_async/src/queue.rs | 6 ++ crosvm_plugin/src/lib.rs | 8 +- disk/src/composite.rs | 2 +- io_uring/src/uring.rs | 2 + power_monitor/build.rs | 13 ++- protos/build.rs | 12 +-- src/plugin/process.rs | 2 +- src/plugin/vcpu.rs | 8 +- sys_util/src/sched.rs | 2 +- 15 files changed, 155 insertions(+), 106 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bb1f45d99b..f906645f97 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -92,9 +92,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "0.1.7" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" +checksum = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" [[package]] name = "autocfg" @@ -207,7 +207,7 @@ dependencies = [ name = "cros_fuzz" version = "0.1.0" dependencies = [ - "rand_core 0.4.2", + "rand_core 0.4.0", ] [[package]] @@ -404,9 +404,9 @@ dependencies = [ [[package]] name = "futures" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6f16056ecbb57525ff698bb955162d0cd03bee84e6241c27ff75c08d8ca5987" +checksum = "7f55667319111d593ba876406af7c409c0ebb44dc4be6132a783ccf163ea14c1" dependencies = [ "futures-channel", "futures-core", @@ -418,9 +418,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcae98ca17d102fd8a3603727b9259fcf7fa4239b603d2142926189bc8999b86" +checksum = "8c2dd2df839b57db9ab69c2c9d8f3e8c81984781937fe2807dc6dcf3b2ad2939" dependencies = [ "futures-core", "futures-sink", @@ -428,33 +428,33 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79564c427afefab1dfb3298535b21eda083ef7935b4f0ecbfcb121f0aec10866" +checksum = "15496a72fabf0e62bdc3df11a59a3787429221dd0710ba8ef163d6f7a9112c94" [[package]] name = "futures-io" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e676577d229e70952ab25f3945795ba5b16d63ca794ca9d2c860e5595d20b5ff" +checksum = "d71c2c65c57704c32f5241c1223167c2c3294fd34ac020c807ddbe6db287ba59" [[package]] name = "futures-sink" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "171be33efae63c2d59e6dbba34186fe0d6394fb378069a76dfd80fdcffd43c16" +checksum = "85754d98985841b7d4f5e8e6fbfa4a4ac847916893ec511a2917ccd8525b8bb3" [[package]] name = "futures-task" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bae52d6b29cf440e298856fec3965ee6fa71b06aa7495178615953fd669e5f9" +checksum = "fa189ef211c15ee602667a6fcfe1c1fd9e07d42250d2156382820fba33c9df80" [[package]] name = "futures-util" -version = "0.3.1" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0d66274fb76985d3c62c886d1da7ac4c0903a8c9f754e8fe0f35a6a6cc39e76" +checksum = "1812c7ab8aedf8d6f2701a43e1243acdbcc2b36ab26e2ad421eb99ac963d96d1" dependencies = [ "futures-channel", "futures-core", @@ -462,6 +462,7 @@ dependencies = [ "futures-sink", "futures-task", "memchr", + "pin-project-lite", "pin-utils", "slab", ] @@ -481,20 +482,20 @@ dependencies = [ [[package]] name = "getopts" -version = "0.2.18" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797" +checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5" dependencies = [ "unicode-width", ] [[package]] name = "getrandom" -version = "0.2.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" +checksum = "ee8025cf36f917e6a52cce185b7c7177689b838b7ec138364e50cc2277a56cf4" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 0.1.10", "libc", "wasi", ] @@ -511,6 +512,15 @@ dependencies = [ "pkg-config", ] +[[package]] +name = "hermit-abi" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "307c3c9f937f38e3534b1d6447ecf090cafcc9744e4a6360e8b037b2cf5af120" +dependencies = [ + "libc", +] + [[package]] name = "hypervisor" version = "0.1.0" @@ -606,9 +616,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.93" +version = "0.2.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9385f66bf6105b241aa65a61cb923ef20efc665cb9f9bb50ac2f0c4b7f378d41" +checksum = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e" [[package]] name = "libcras" @@ -659,11 +669,11 @@ dependencies = [ [[package]] name = "log" -version = "0.4.5" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fcce5fa49cc693c312001daf1d13411c4a5283796bac1084299ea3e567113f" +checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" dependencies = [ - "cfg-if 0.1.10", + "cfg-if 1.0.0", ] [[package]] @@ -674,9 +684,9 @@ checksum = "0ca88d725a0a943b096803bd34e73a4437208b6077654cc4ecb2947a5f91618d" [[package]] name = "memchr" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3197e20c7edb283f87c071ddfc7a2cca8f8e0b888c242959846a6fce03c72223" +checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" [[package]] name = "memoffset" @@ -733,10 +743,11 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.9.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238" +checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" dependencies = [ + "hermit-abi", "libc", ] @@ -762,10 +773,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba7ae1a2180ed02ddfdb5ab70c70d596a26dd642e097bb6fe78b1bde8588ed97" [[package]] -name = "pin-utils" -version = "0.1.0-alpha.4" +name = "pin-project-lite" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587" +checksum = "439697af366c49a6d0a010c56a0d97685bc140ce0d377b13a2ea2aa42d64a827" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" @@ -794,42 +811,43 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.24" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71" +checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" dependencies = [ "unicode-xid", ] [[package]] name = "protobuf" -version = "2.8.1" +version = "2.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40361836defdd5871ff7e84096c6f6444af7fc157f8ef1789f54f147687caa20" +checksum = "db50e77ae196458ccd3dc58a31ea1a90b0698ab1b7928d89f644c25d72070267" [[package]] name = "protobuf-codegen" -version = "2.8.1" +version = "2.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12c6abd78435445fc86898ebbd0521a68438063d4a73e23527b7134e6bf58b4a" +checksum = "09321cef9bee9ddd36884f97b7f7cc92a586cdc74205c4b3aeba65b5fc9c6f90" dependencies = [ "protobuf", ] [[package]] name = "protoc" -version = "2.8.1" +version = "2.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3998c4bc0af8ccbd3cc68245ee9f72663c5ae2fb78bc48ff7719aef11562edea" +checksum = "c367feabb5f78ca3b2ec25e2c4a5f4f0826017d7fb634f52961afd1a6613d1fb" dependencies = [ "log", + "which", ] [[package]] name = "protoc-rust" -version = "2.8.1" +version = "2.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234c97039c32bb58a883d0deafa57db37e59428ce536f3bdfe1c46cffec04113" +checksum = "7bb2c1038f8014a2e42fdffec03ffc03f574a8bf66b0ac32f1b6941681eb1317" dependencies = [ "protobuf", "protobuf-codegen", @@ -858,9 +876,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.2" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe" +checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" dependencies = [ "proc-macro2", ] @@ -871,10 +889,10 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" dependencies = [ - "autocfg 0.1.7", + "autocfg 0.1.2", "libc", "rand_chacha", - "rand_core 0.4.2", + "rand_core 0.4.0", "rand_hc", "rand_isaac", "rand_jitter", @@ -890,7 +908,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" dependencies = [ - "autocfg 0.1.7", + "autocfg 0.1.2", "rand_core 0.3.1", ] @@ -900,14 +918,14 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" dependencies = [ - "rand_core 0.4.2", + "rand_core 0.4.0", ] [[package]] name = "rand_core" -version = "0.4.2" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" +checksum = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" [[package]] name = "rand_hc" @@ -933,25 +951,25 @@ version = "0.1.0" [[package]] name = "rand_jitter" -version = "0.1.4" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b" +checksum = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" dependencies = [ "libc", - "rand_core 0.4.2", + "rand_core 0.4.0", "winapi", ] [[package]] name = "rand_os" -version = "0.1.3" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" +checksum = "b7c690732391ae0abafced5015ffb53656abfaec61b342290e5eb56b286a679d" dependencies = [ "cloudabi", "fuchsia-cprng", "libc", - "rand_core 0.4.2", + "rand_core 0.4.0", "rdrand", "winapi", ] @@ -962,8 +980,8 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" dependencies = [ - "autocfg 0.1.7", - "rand_core 0.4.2", + "autocfg 0.1.2", + "rand_core 0.4.0", ] [[package]] @@ -1022,18 +1040,18 @@ checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" [[package]] name = "serde" -version = "1.0.121" +version = "1.0.125" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6159e3c76cab06f6bc466244d43b35e77e9500cd685da87620addadc2a4c40b1" +checksum = "558dc50e1a5a5fa7112ca2ce4effcb321b0300c0d4ccf0776a9f60cd89031171" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.121" +version = "1.0.125" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3fcab8778dc651bc65cfab2e4eb64996f3c912b74002fb379c94517e1f27c46" +checksum = "b093b7a2bb58203b5da3056c05b4ec1fed827dcfdb37347a8841695263b3d06d" dependencies = [ "proc-macro2", "quote", @@ -1053,9 +1071,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" +checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" [[package]] name = "smallvec" @@ -1065,9 +1083,9 @@ checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" [[package]] name = "syn" -version = "1.0.58" +version = "1.0.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc60a3d73ea6594cd712d830cc1f0390fd71542d8c8cd24e70cc54cdfd5e05d5" +checksum = "a1e8cdbefb79a9a5a65e0db8b47b723ee907b7c7f8496c76a1770b5c310bab82" dependencies = [ "proc-macro2", "quote", @@ -1137,15 +1155,15 @@ dependencies = [ [[package]] name = "unicode-width" -version = "0.1.5" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526" +checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" [[package]] name = "unicode-xid" -version = "0.2.0" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c" +checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" [[package]] name = "usb_sys" @@ -1267,9 +1285,19 @@ dependencies = [ [[package]] name = "wasi" -version = "0.10.2+wasi-snapshot-preview1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "which" +version = "4.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87c14ef7e1b8b8ecfc75d5eca37949410046e66f15d185c01d70824f1f8111ef" +dependencies = [ + "libc", + "thiserror", +] [[package]] name = "winapi" diff --git a/base/src/ioctl.rs b/base/src/ioctl.rs index 307d5d9381..d5a91fc57f 100644 --- a/base/src/ioctl.rs +++ b/base/src/ioctl.rs @@ -6,16 +6,22 @@ use crate::{AsRawDescriptor, IoctlNr}; use std::os::raw::{c_int, c_ulong, c_void}; /// Run an ioctl with no arguments. +/// # Safety +/// The caller is responsible for determining the safety of the particular ioctl. pub unsafe fn ioctl(descriptor: &F, nr: IoctlNr) -> c_int { libc::ioctl(descriptor.as_raw_descriptor(), nr, 0) } /// Run an ioctl with a single value argument. +/// # Safety +/// The caller is responsible for determining the safety of the particular ioctl. pub unsafe fn ioctl_with_val(descriptor: &dyn AsRawDescriptor, nr: IoctlNr, arg: c_ulong) -> c_int { libc::ioctl(descriptor.as_raw_descriptor(), nr, arg) } /// Run an ioctl with an immutable reference. +/// # Safety +/// The caller is responsible for determining the safety of the particular ioctl. pub unsafe fn ioctl_with_ref(descriptor: &dyn AsRawDescriptor, nr: IoctlNr, arg: &T) -> c_int { libc::ioctl( descriptor.as_raw_descriptor(), @@ -25,6 +31,8 @@ pub unsafe fn ioctl_with_ref(descriptor: &dyn AsRawDescriptor, nr: IoctlNr, a } /// Run an ioctl with a mutable reference. +/// # Safety +/// The caller is responsible for determining the safety of the particular ioctl. pub unsafe fn ioctl_with_mut_ref( descriptor: &dyn AsRawDescriptor, nr: IoctlNr, @@ -38,6 +46,8 @@ pub unsafe fn ioctl_with_mut_ref( } /// Run an ioctl with a raw pointer. +/// # Safety +/// The caller is responsible for determining the safety of the particular ioctl. pub unsafe fn ioctl_with_ptr( descriptor: &dyn AsRawDescriptor, nr: IoctlNr, @@ -47,6 +57,8 @@ pub unsafe fn ioctl_with_ptr( } /// Run an ioctl with a mutable raw pointer. +/// # Safety +/// The caller is responsible for determining the safety of the particular ioctl. pub unsafe fn ioctl_with_mut_ptr( descriptor: &dyn AsRawDescriptor, nr: IoctlNr, diff --git a/base/src/mmap.rs b/base/src/mmap.rs index d2bd4cb335..16444fb054 100644 --- a/base/src/mmap.rs +++ b/base/src/mmap.rs @@ -74,6 +74,7 @@ impl Unix for MemoryMapping { } pub trait MemoryMappingBuilderUnix<'a> { + #[allow(clippy::wrong_self_convention)] fn from_descriptor(self, descriptor: &'a dyn AsRawDescriptor) -> MemoryMappingBuilder; } @@ -89,6 +90,7 @@ impl<'a> MemoryMappingBuilderUnix<'a> for MemoryMappingBuilder<'a> { /// Build the memory mapping given the specified descriptor to mapped memory /// /// Default: Create a new memory mapping. + #[allow(clippy::wrong_self_convention)] fn from_descriptor(mut self, descriptor: &'a dyn AsRawDescriptor) -> MemoryMappingBuilder { self.descriptor = Some(descriptor); self @@ -114,7 +116,7 @@ impl<'a> MemoryMappingBuilder<'a> { /// /// Note: this is a forward looking interface to accomodate platforms that /// require special handling for file backed mappings. - #[allow(unused_mut)] + #[allow(clippy::wrong_self_convention, unused_mut)] pub fn from_file(mut self, file: &'a File) -> MemoryMappingBuilder { self.descriptor = Some(file as &dyn AsRawDescriptor); self diff --git a/base/src/shm.rs b/base/src/shm.rs index a445f3d626..eb4da79c84 100644 --- a/base/src/shm.rs +++ b/base/src/shm.rs @@ -87,9 +87,9 @@ impl IntoRawDescriptor for SharedMemory { } } -impl Into for SharedMemory { - fn into(self) -> SafeDescriptor { +impl From for SafeDescriptor { + fn from(sm: SharedMemory) -> SafeDescriptor { // Safe because we own the SharedMemory at this point. - unsafe { SafeDescriptor::from_raw_descriptor(self.into_raw_descriptor()) } + unsafe { SafeDescriptor::from_raw_descriptor(sm.into_raw_descriptor()) } } } diff --git a/base/src/tube.rs b/base/src/tube.rs index 675089ff64..613731b06b 100644 --- a/base/src/tube.rs +++ b/base/src/tube.rs @@ -150,9 +150,9 @@ impl Deref for AsyncTube { } } -impl Into for AsyncTube { - fn into(self) -> Tube { - self.inner.into_source() +impl From for Tube { + fn from(at: AsyncTube) -> Tube { + at.inner.into_source() } } diff --git a/ci/test_runner.py b/ci/test_runner.py index 1207207c13..85bdc78e2a 100644 --- a/ci/test_runner.py +++ b/ci/test_runner.py @@ -620,6 +620,8 @@ def main( print("--require-all needs to be run with --use-vm or --run-privileged") exit(1) + os.environ["RUST_BACKTRACE"] = "1" + execute_tests( crate_requirements, feature_requirements, diff --git a/cros_async/src/queue.rs b/cros_async/src/queue.rs index 3192703a54..f95de06290 100644 --- a/cros_async/src/queue.rs +++ b/cros_async/src/queue.rs @@ -38,6 +38,12 @@ impl RunnableQueue { } } +impl Default for RunnableQueue { + fn default() -> Self { + Self::new() + } +} + impl<'q> IntoIterator for &'q RunnableQueue { type Item = Runnable; type IntoIter = RunnableQueueIter<'q>; diff --git a/crosvm_plugin/src/lib.rs b/crosvm_plugin/src/lib.rs index 86827a6817..e0fb2f12a8 100644 --- a/crosvm_plugin/src/lib.rs +++ b/crosvm_plugin/src/lib.rs @@ -31,7 +31,7 @@ use std::sync::Arc; use libc::{E2BIG, EINVAL, ENOENT, ENOTCONN, EPROTO}; -use protobuf::{parse_from_bytes, Message, ProtobufEnum, RepeatedField}; +use protobuf::{Message, ProtobufEnum, RepeatedField}; use base::ScmSocket; @@ -308,8 +308,8 @@ impl crosvm { .map(|&fd| unsafe { File::from_raw_fd(fd) }) .collect(); - let response: MainResponse = - parse_from_bytes(&self.response_buffer[..msg_size]).map_err(proto_error_to_int)?; + let response: MainResponse = Message::parse_from_bytes(&self.response_buffer[..msg_size]) + .map_err(proto_error_to_int)?; if response.errno != 0 { return Err(response.errno); } @@ -1070,7 +1070,7 @@ impl crosvm_vcpu { if bytes == 0 || total_size > self.response_length { return Err(EINVAL); } - let response: VcpuResponse = parse_from_bytes( + let response: VcpuResponse = Message::parse_from_bytes( &self.response_buffer[self.response_base + bytes..self.response_base + total_size], ) .map_err(proto_error_to_int)?; diff --git a/disk/src/composite.rs b/disk/src/composite.rs index 5b88caa221..3938d1b0fc 100644 --- a/disk/src/composite.rs +++ b/disk/src/composite.rs @@ -185,7 +185,7 @@ impl CompositeDiskFile { return Err(Error::InvalidMagicHeader); } let proto: cdisk_spec::CompositeDisk = - protobuf::parse_from_reader(&mut file).map_err(Error::InvalidProto)?; + Message::parse_from_reader(&mut file).map_err(Error::InvalidProto)?; if proto.get_version() != COMPOSITE_DISK_VERSION { return Err(Error::UnknownVersion(proto.get_version())); } diff --git a/io_uring/src/uring.rs b/io_uring/src/uring.rs index 724b79ea5c..3a516a55eb 100644 --- a/io_uring/src/uring.rs +++ b/io_uring/src/uring.rs @@ -310,6 +310,7 @@ impl URingContext { .add_rw_op(ptr, len, fd, offset, user_data, IORING_OP_READV as u8) } + /// # Safety /// See 'writev' but accepts an iterator instead of a vector if there isn't already a vector in /// existence. pub unsafe fn add_writev_iter( @@ -368,6 +369,7 @@ impl URingContext { Ok(()) } + /// # Safety /// See 'readv' but accepts an iterator instead of a vector if there isn't already a vector in /// existence. pub unsafe fn add_readv_iter( diff --git a/power_monitor/build.rs b/power_monitor/build.rs index b925c2879e..174389d74f 100644 --- a/power_monitor/build.rs +++ b/power_monitor/build.rs @@ -31,13 +31,12 @@ fn main() { let input_files = [power_manager_dir.join("power_supply_properties.proto")]; let include_dirs = [power_manager_dir]; - protoc_rust::run(protoc_rust::Args { - out_dir: out_dir.as_os_str().to_str().unwrap(), - input: &paths_to_strs(&input_files), - includes: &paths_to_strs(&include_dirs), - customize: Default::default(), - }) - .expect("protoc"); + protoc_rust::Codegen::new() + .inputs(&paths_to_strs(&input_files)) + .includes(&paths_to_strs(&include_dirs)) + .out_dir(out_dir.as_os_str().to_str().unwrap()) + .run() + .expect("protoc"); let mut path_include_mods = String::new(); for input_file in input_files.iter() { diff --git a/protos/build.rs b/protos/build.rs index 2e870b48f9..e28936aa49 100644 --- a/protos/build.rs +++ b/protos/build.rs @@ -92,12 +92,12 @@ fn protoc>(module: &str, input_path: P, mut out: &File) -> Result fs::create_dir_all(&out_dir)?; // Invoke protobuf compiler. - protoc_rust::run(protoc_rust::Args { - out_dir: &out_dir, - includes: &[input_dir.as_os_str().to_str().unwrap()], - input: &[input_path.as_os_str().to_str().unwrap()], - ..Default::default() - })?; + protoc_rust::Codegen::new() + .input(input_path.as_os_str().to_str().unwrap()) + .include(input_dir.as_os_str().to_str().unwrap()) + .out_dir(&out_dir) + .run() + .expect("protoc"); // Write out a `mod` that refers to the generated module. // diff --git a/src/plugin/process.rs b/src/plugin/process.rs index c34b708bbf..833616eb24 100644 --- a/src/plugin/process.rs +++ b/src/plugin/process.rs @@ -521,7 +521,7 @@ impl Process { return Err(Error::PluginSocketHup); } - let request = protobuf::parse_from_bytes::(&self.request_buffer[..msg_size]) + let request: MainRequest = Message::parse_from_bytes(&self.request_buffer[..msg_size]) .map_err(Error::DecodeRequest)?; /// Use this to make it easier to stuff various kinds of File-like objects into the diff --git a/src/plugin/vcpu.rs b/src/plugin/vcpu.rs index d874f64c2c..c5c93f7c98 100644 --- a/src/plugin/vcpu.rs +++ b/src/plugin/vcpu.rs @@ -13,7 +13,7 @@ use std::sync::{Arc, RwLock}; use libc::{EINVAL, ENOENT, ENOTTY, EPERM, EPIPE, EPROTO}; -use protobuf::Message; +use protobuf::{CodedOutputStream, Message}; use assertions::const_assert; use base::{error, LayoutAllocation}; @@ -23,7 +23,6 @@ use kvm_sys::{ kvm_debugregs, kvm_enable_cap, kvm_fpu, kvm_lapic_state, kvm_mp_state, kvm_msr_entry, kvm_msrs, kvm_regs, kvm_sregs, kvm_vcpu_events, kvm_xcrs, KVM_CPUID_FLAG_SIGNIFCANT_INDEX, }; -use protobuf::CodedOutputStream; use protos::plugin::*; use sync::Mutex; @@ -592,9 +591,8 @@ impl PluginVcpu { let mut read_pipe = &self.read_pipe; let msg_size = read_pipe.read(&mut request_buffer).map_err(io_to_sys_err)?; - let mut request = - protobuf::parse_from_bytes::(&request_buffer[..msg_size]) - .map_err(proto_to_sys_err)?; + let mut request: VcpuRequest = + Message::parse_from_bytes(&request_buffer[..msg_size]).map_err(proto_to_sys_err)?; let res = if request.has_wait() { match wait_reason { diff --git a/sys_util/src/sched.rs b/sys_util/src/sched.rs index d9972c62fa..2a44ab8e83 100644 --- a/sys_util/src/sched.rs +++ b/sys_util/src/sched.rs @@ -72,7 +72,7 @@ pub fn enable_core_scheduling() -> Result<()> { const PR_SCHED_CORE: i32 = 62; const PR_SCHED_CORE_CREATE: i32 = 1; - #[allow(non_camel_case_types, dead_code)] + #[allow(clippy::upper_case_acronyms, non_camel_case_types, dead_code)] /// Specifies the scope of the pid parameter of `PR_SCHED_CORE`. enum pid_type { /// `PID` refers to threads.