diff options
66 files changed, 104 insertions, 61 deletions
diff --git a/bit_field/bit_field_derive/bit_field_derive.rs b/bit_field/bit_field_derive/bit_field_derive.rs index 0bd0daf..e7d26cd 100644 --- a/bit_field/bit_field_derive/bit_field_derive.rs +++ b/bit_field/bit_field_derive/bit_field_derive.rs @@ -13,10 +13,11 @@ extern crate quote; extern crate syn; use proc_macro2::{Span, TokenStream}; +use quote::{quote, quote_spanned}; use syn::parse::{Error, Result}; use syn::{ - Attribute, Data, DataEnum, DeriveInput, Fields, FieldsNamed, FieldsUnnamed, Ident, Lit, LitInt, - Meta, Type, Visibility, + parse_macro_input, Attribute, Data, DataEnum, DeriveInput, Fields, FieldsNamed, FieldsUnnamed, + Ident, Lit, LitInt, Meta, Type, Visibility, }; /// The function that derives the actual implementation. @@ -654,6 +655,7 @@ pub fn define_bit_field_specifiers(_input: proc_macro::TokenStream) -> proc_macr #[cfg(test)] mod tests { use super::*; + use syn::parse_quote; #[test] fn end_to_end() { diff --git a/devices/src/i8042.rs b/devices/src/i8042.rs index 7feae8c..1f8a837 100644 --- a/devices/src/i8042.rs +++ b/devices/src/i8042.rs @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -use sys_util::EventFd; +use sys_util::{error, EventFd}; use crate::BusDevice; diff --git a/devices/src/ioapic.rs b/devices/src/ioapic.rs index 61829b6..d8b3808 100644 --- a/devices/src/ioapic.rs +++ b/devices/src/ioapic.rs @@ -8,6 +8,7 @@ use crate::split_irqchip_common::*; use crate::BusDevice; use bit_field::*; +use sys_util::warn; #[bitfield] #[derive(Clone, Copy, PartialEq)] diff --git a/devices/src/pci/ac97.rs b/devices/src/pci/ac97.rs index 13cb47c..4bbe090 100644 --- a/devices/src/pci/ac97.rs +++ b/devices/src/pci/ac97.rs @@ -6,7 +6,7 @@ use std::os::unix::io::RawFd; use audio_streams::StreamSource; use resources::SystemAllocator; -use sys_util::{EventFd, GuestMemory}; +use sys_util::{error, EventFd, GuestMemory}; use crate::pci::ac97_bus_master::Ac97BusMaster; use crate::pci::ac97_mixer::Ac97Mixer; diff --git a/devices/src/pci/ac97_bus_master.rs b/devices/src/pci/ac97_bus_master.rs index d4b6f73..b1245b9 100644 --- a/devices/src/pci/ac97_bus_master.rs +++ b/devices/src/pci/ac97_bus_master.rs @@ -15,7 +15,9 @@ use std::time::Instant; use audio_streams::{PlaybackBuffer, PlaybackBufferStream, StreamControl, StreamSource}; use data_model::{VolatileMemory, VolatileSlice}; use sync::Mutex; -use sys_util::{self, set_rt_prio_limit, set_rt_round_robin, EventFd, GuestAddress, GuestMemory}; +use sys_util::{ + self, error, set_rt_prio_limit, set_rt_round_robin, warn, EventFd, GuestAddress, GuestMemory, +}; use crate::pci::ac97_mixer::Ac97Mixer; use crate::pci::ac97_regs::*; diff --git a/devices/src/pci/pci_configuration.rs b/devices/src/pci/pci_configuration.rs index f04284a..1cfa6bb 100644 --- a/devices/src/pci/pci_configuration.rs +++ b/devices/src/pci/pci_configuration.rs @@ -5,6 +5,7 @@ use std::fmt::{self, Display}; use crate::pci::PciInterruptPin; +use sys_util::warn; // The number of 32bit registers in the config space, 256 bytes. const NUM_CONFIGURATION_REGISTERS: usize = 64; diff --git a/devices/src/pic.rs b/devices/src/pic.rs index a55a336..7fbd4af 100644 --- a/devices/src/pic.rs +++ b/devices/src/pic.rs @@ -13,6 +13,7 @@ // emotional context, this file refers to them instead as "primary" and "secondary" PITs. use crate::BusDevice; +use sys_util::{debug, warn}; #[repr(usize)] #[derive(Debug, Clone, Copy, PartialEq)] diff --git a/devices/src/pit.rs b/devices/src/pit.rs index 2012b91..0bcf0a6 100644 --- a/devices/src/pit.rs +++ b/devices/src/pit.rs @@ -13,7 +13,7 @@ use std::time::Duration; use bit_field::BitField1; use bit_field::*; use sync::Mutex; -use sys_util::{Error as SysError, EventFd, Fd, PollContext, PollToken}; +use sys_util::{error, warn, Error as SysError, EventFd, Fd, PollContext, PollToken}; #[cfg(not(test))] use sys_util::Clock; diff --git a/devices/src/pl030.rs b/devices/src/pl030.rs index 35fbba4..b5338ac 100644 --- a/devices/src/pl030.rs +++ b/devices/src/pl030.rs @@ -3,7 +3,7 @@ // found in the LICENSE file. use std::time::{SystemTime, UNIX_EPOCH}; -use sys_util::EventFd; +use sys_util::{warn, EventFd}; use crate::BusDevice; diff --git a/devices/src/proxy.rs b/devices/src/proxy.rs index 9880f14..dc64212 100644 --- a/devices/src/proxy.rs +++ b/devices/src/proxy.rs @@ -13,7 +13,7 @@ use std::{self, io}; use io_jail::{self, Minijail}; use libc::pid_t; use msg_socket::{MsgOnSocket, MsgReceiver, MsgSender, MsgSocket}; -use sys_util::net::UnixSeqpacket; +use sys_util::{error, net::UnixSeqpacket}; use crate::BusDevice; diff --git a/devices/src/register_space/register.rs b/devices/src/register_space/register.rs index 4325344..f7d416e 100644 --- a/devices/src/register_space/register.rs +++ b/devices/src/register_space/register.rs @@ -10,6 +10,7 @@ use std::sync::{Arc, MutexGuard}; use sync::Mutex; use data_model::DataInit; +use sys_util::error; /// Type of offset in the register space. pub type RegisterOffset = u64; diff --git a/devices/src/serial.rs b/devices/src/serial.rs index 078c91b..7cb7611 100644 --- a/devices/src/serial.rs +++ b/devices/src/serial.rs @@ -5,7 +5,7 @@ use std::collections::VecDeque; use std::io; -use sys_util::{EventFd, Result}; +use sys_util::{error, EventFd, Result}; use crate::BusDevice; diff --git a/devices/src/usb/host_backend/context.rs b/devices/src/usb/host_backend/context.rs index 4acd752..bf4a13d 100644 --- a/devices/src/usb/host_backend/context.rs +++ b/devices/src/usb/host_backend/context.rs @@ -7,7 +7,7 @@ use crate::utils::{EventHandler, EventLoop}; use std::os::raw::c_short; use std::os::unix::io::RawFd; use std::sync::{Arc, Weak}; -use sys_util::WatchingEvents; +use sys_util::{error, WatchingEvents}; use usb_util::hotplug::UsbHotplugHandler; use usb_util::libusb_context::{LibUsbContext, LibUsbPollfdChangeHandler}; use usb_util::libusb_device::LibUsbDevice; diff --git a/devices/src/usb/host_backend/host_backend_device_provider.rs b/devices/src/usb/host_backend/host_backend_device_provider.rs index de80521..8aca33e 100644 --- a/devices/src/usb/host_backend/host_backend_device_provider.rs +++ b/devices/src/usb/host_backend/host_backend_device_provider.rs @@ -17,7 +17,7 @@ use std::mem; use std::os::unix::io::{AsRawFd, RawFd}; use std::time::Duration; use sys_util::net::UnixSeqpacket; -use sys_util::WatchingEvents; +use sys_util::{error, WatchingEvents}; use vm_control::{UsbControlCommand, UsbControlResult, UsbControlSocket}; const SOCKET_TIMEOUT_MS: u64 = 2000; diff --git a/devices/src/usb/host_backend/host_device.rs b/devices/src/usb/host_backend/host_device.rs index 00cd876..235edbf 100644 --- a/devices/src/usb/host_backend/host_device.rs +++ b/devices/src/usb/host_backend/host_device.rs @@ -15,6 +15,7 @@ use crate::usb::xhci::xhci_transfer::{XhciTransfer, XhciTransferState, XhciTrans use crate::utils::AsyncJobQueue; use crate::utils::FailHandle; use std::collections::HashMap; +use sys_util::{error, warn}; use usb_util::device_handle::DeviceHandle; use usb_util::error::Error as LibUsbError; use usb_util::libusb_device::LibUsbDevice; diff --git a/devices/src/usb/host_backend/hotplug.rs b/devices/src/usb/host_backend/hotplug.rs index ab1c66d..673acce 100644 --- a/devices/src/usb/host_backend/hotplug.rs +++ b/devices/src/usb/host_backend/hotplug.rs @@ -5,6 +5,7 @@ use std::sync::Arc; use crate::usb::xhci::usb_hub::UsbHub; +use sys_util::error; use usb_util::hotplug::{HotplugEvent, UsbHotplugHandler}; use usb_util::libusb_device::LibUsbDevice; diff --git a/devices/src/usb/host_backend/usb_endpoint.rs b/devices/src/usb/host_backend/usb_endpoint.rs index f562110..329d6ff 100644 --- a/devices/src/usb/host_backend/usb_endpoint.rs +++ b/devices/src/usb/host_backend/usb_endpoint.rs @@ -14,6 +14,7 @@ use crate::usb::xhci::xhci_transfer::{ }; use crate::utils::AsyncJobQueue; use crate::utils::FailHandle; +use sys_util::error; use usb_util::device_handle::DeviceHandle; use usb_util::types::{EndpointDirection, EndpointType, ENDPOINT_DIRECTION_OFFSET}; use usb_util::usb_transfer::{ diff --git a/devices/src/usb/host_backend/utils.rs b/devices/src/usb/host_backend/utils.rs index d88a1a5..6ae0388 100644 --- a/devices/src/usb/host_backend/utils.rs +++ b/devices/src/usb/host_backend/utils.rs @@ -10,6 +10,7 @@ use super::error::*; use crate::usb::xhci::xhci_transfer::{XhciTransfer, XhciTransferState}; use crate::utils::AsyncJobQueue; use crate::utils::FailHandle; +use sys_util::{error, warn}; use usb_util::device_handle::DeviceHandle; use usb_util::usb_transfer::{TransferStatus, UsbTransfer, UsbTransferBuffer}; diff --git a/devices/src/usb/log.rs b/devices/src/usb/log.rs index b8fea64..4cb906b 100644 --- a/devices/src/usb/log.rs +++ b/devices/src/usb/log.rs @@ -8,7 +8,7 @@ macro_rules! usb_debug { ($($args:tt)+) => { // Set true to enable logging. if false { - debug!($($args)*); + sys_util::debug!($($args)*); } }; } diff --git a/devices/src/usb/xhci/command_ring_controller.rs b/devices/src/usb/xhci/command_ring_controller.rs index ea34ca0..c8c059f 100644 --- a/devices/src/usb/xhci/command_ring_controller.rs +++ b/devices/src/usb/xhci/command_ring_controller.rs @@ -18,7 +18,7 @@ use crate::utils::EventLoop; use std::fmt::{self, Display}; use std::sync::Arc; use sync::Mutex; -use sys_util::{Error as SysError, EventFd, GuestAddress, GuestMemory}; +use sys_util::{error, warn, Error as SysError, EventFd, GuestAddress, GuestMemory}; #[derive(Debug)] pub enum Error { diff --git a/devices/src/usb/xhci/device_slot.rs b/devices/src/usb/xhci/device_slot.rs index b9bb1ac..129c849 100644 --- a/devices/src/usb/xhci/device_slot.rs +++ b/devices/src/usb/xhci/device_slot.rs @@ -19,7 +19,7 @@ use std::mem::size_of; use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::Arc; use sync::Mutex; -use sys_util::{GuestAddress, GuestMemory, GuestMemoryError}; +use sys_util::{error, GuestAddress, GuestMemory, GuestMemoryError}; #[derive(Debug)] pub enum Error { diff --git a/devices/src/usb/xhci/intr_resample_handler.rs b/devices/src/usb/xhci/intr_resample_handler.rs index 1eb11a6..91dd46a 100644 --- a/devices/src/usb/xhci/intr_resample_handler.rs +++ b/devices/src/usb/xhci/intr_resample_handler.rs @@ -6,7 +6,7 @@ use super::interrupter::Interrupter; use crate::utils::{EventHandler, EventLoop}; use std::sync::Arc; use sync::Mutex; -use sys_util::{EventFd, WatchingEvents}; +use sys_util::{error, EventFd, WatchingEvents}; /// Interrupt Resample handler handles resample event. It will reassert interrupt if needed. pub struct IntrResampleHandler { diff --git a/devices/src/usb/xhci/ring_buffer_controller.rs b/devices/src/usb/xhci/ring_buffer_controller.rs index f375178..5084fab 100644 --- a/devices/src/usb/xhci/ring_buffer_controller.rs +++ b/devices/src/usb/xhci/ring_buffer_controller.rs @@ -9,7 +9,7 @@ use std::fmt::{self, Display}; use std::sync::{Arc, MutexGuard}; use sync::Mutex; -use sys_util::{Error as SysError, EventFd, GuestAddress, GuestMemory, WatchingEvents}; +use sys_util::{error, Error as SysError, EventFd, GuestAddress, GuestMemory, WatchingEvents}; use super::ring_buffer::RingBuffer; diff --git a/devices/src/usb/xhci/ring_buffer_stop_cb.rs b/devices/src/usb/xhci/ring_buffer_stop_cb.rs index b1cb6e8..3eca928 100644 --- a/devices/src/usb/xhci/ring_buffer_stop_cb.rs +++ b/devices/src/usb/xhci/ring_buffer_stop_cb.rs @@ -4,6 +4,7 @@ use crate::utils::FailHandle; use std::sync::{Arc, Mutex}; +use sys_util::error; /// RingBufferStopCallback wraps a callback. The callback will be invoked when last instance of /// RingBufferStopCallback and its clones is dropped. diff --git a/devices/src/usb/xhci/transfer_ring_controller.rs b/devices/src/usb/xhci/transfer_ring_controller.rs index dec2108..5bf6024 100644 --- a/devices/src/usb/xhci/transfer_ring_controller.rs +++ b/devices/src/usb/xhci/transfer_ring_controller.rs @@ -8,7 +8,7 @@ use crate::usb::xhci::ring_buffer_controller::{ use crate::utils::EventLoop; use std::sync::Arc; use sync::Mutex; -use sys_util::{EventFd, GuestMemory}; +use sys_util::{error, EventFd, GuestMemory}; use super::interrupter::Interrupter; use super::usb_hub::UsbPort; diff --git a/devices/src/usb/xhci/xhci.rs b/devices/src/usb/xhci/xhci.rs index 0b66197..df57e68 100644 --- a/devices/src/usb/xhci/xhci.rs +++ b/devices/src/usb/xhci/xhci.rs @@ -15,7 +15,7 @@ use crate::utils::{Error as UtilsError, EventLoop, FailHandle}; use std::fmt::{self, Display}; use std::sync::Arc; use sync::Mutex; -use sys_util::{EventFd, GuestAddress, GuestMemory}; +use sys_util::{error, EventFd, GuestAddress, GuestMemory}; #[derive(Debug)] pub enum Error { diff --git a/devices/src/usb/xhci/xhci_controller.rs b/devices/src/usb/xhci/xhci_controller.rs index 66834b8..3f2db74 100644 --- a/devices/src/usb/xhci/xhci_controller.rs +++ b/devices/src/usb/xhci/xhci_controller.rs @@ -17,7 +17,7 @@ use std::mem; use std::os::unix::io::RawFd; use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::Arc; -use sys_util::{EventFd, GuestMemory}; +use sys_util::{error, EventFd, GuestMemory}; const XHCI_BAR0_SIZE: u64 = 0x10000; diff --git a/devices/src/usb/xhci/xhci_transfer.rs b/devices/src/usb/xhci/xhci_transfer.rs index 421c5b1..2973aa7 100644 --- a/devices/src/usb/xhci/xhci_transfer.rs +++ b/devices/src/usb/xhci/xhci_transfer.rs @@ -15,7 +15,7 @@ use std::fmt::{self, Display}; use std::mem; use std::sync::{Arc, Weak}; use sync::Mutex; -use sys_util::{Error as SysError, EventFd, GuestMemory}; +use sys_util::{error, Error as SysError, EventFd, GuestMemory}; use usb_util::types::UsbRequestSetup; use usb_util::usb_transfer::TransferStatus; diff --git a/devices/src/utils/async_job_queue.rs b/devices/src/utils/async_job_queue.rs index 103d705..76ae8c7 100644 --- a/devices/src/utils/async_job_queue.rs +++ b/devices/src/utils/async_job_queue.rs @@ -7,7 +7,7 @@ use super::{EventHandler, EventLoop}; use std::mem; use std::sync::Arc; use sync::Mutex; -use sys_util::{EventFd, WatchingEvents}; +use sys_util::{error, EventFd, WatchingEvents}; /// Async Job Queue can schedule async jobs. pub struct AsyncJobQueue { diff --git a/devices/src/utils/event_loop.rs b/devices/src/utils/event_loop.rs index 34aec61..d91aec9 100644 --- a/devices/src/utils/event_loop.rs +++ b/devices/src/utils/event_loop.rs @@ -9,7 +9,7 @@ use std::os::unix::io::{AsRawFd, RawFd}; use std::sync::{Arc, Weak}; use std::thread; use sync::Mutex; -use sys_util::{EpollContext, EpollEvents, EventFd, PollToken, WatchingEvents}; +use sys_util::{error, warn, EpollContext, EpollEvents, EventFd, PollToken, WatchingEvents}; /// A fail handle will do the clean up when we cannot recover from some error. pub trait FailHandle: Send + Sync { diff --git a/devices/src/virtio/balloon.rs b/devices/src/virtio/balloon.rs index e9f36f6..baff7ab 100644 --- a/devices/src/virtio/balloon.rs +++ b/devices/src/virtio/balloon.rs @@ -14,7 +14,8 @@ use std::thread; use byteorder::{ByteOrder, LittleEndian, ReadBytesExt, WriteBytesExt}; use sys_util::{ - self, net::UnixSeqpacket, EventFd, GuestAddress, GuestMemory, PollContext, PollToken, + self, error, info, net::UnixSeqpacket, warn, EventFd, GuestAddress, GuestMemory, PollContext, + PollToken, }; use super::{ diff --git a/devices/src/virtio/block.rs b/devices/src/virtio/block.rs index 023e1df..0a22e32 100644 --- a/devices/src/virtio/block.rs +++ b/devices/src/virtio/block.rs @@ -18,8 +18,8 @@ use sync::Mutex; use sys_util::Error as SysError; use sys_util::Result as SysResult; use sys_util::{ - EventFd, FileSetLen, FileSync, GuestAddress, GuestMemory, GuestMemoryError, PollContext, - PollToken, PunchHole, TimerFd, WriteZeroes, + error, info, warn, EventFd, FileSetLen, FileSync, GuestAddress, GuestMemory, GuestMemoryError, + PollContext, PollToken, PunchHole, TimerFd, WriteZeroes, }; use data_model::{DataInit, Le16, Le32, Le64}; diff --git a/devices/src/virtio/gpu/backend.rs b/devices/src/virtio/gpu/backend.rs index b0289ae..93e3ce6 100644 --- a/devices/src/virtio/gpu/backend.rs +++ b/devices/src/virtio/gpu/backend.rs @@ -14,7 +14,7 @@ use std::usize; use data_model::*; use msg_socket::{MsgReceiver, MsgSender}; -use sys_util::{GuestAddress, GuestMemory}; +use sys_util::{error, GuestAddress, GuestMemory}; use gpu_buffer::{Buffer, Device, Flags, Format}; use gpu_display::*; diff --git a/devices/src/virtio/gpu/mod.rs b/devices/src/virtio/gpu/mod.rs index 1cf6e6b..a91b5b9 100644 --- a/devices/src/virtio/gpu/mod.rs +++ b/devices/src/virtio/gpu/mod.rs @@ -23,7 +23,9 @@ use std::time::Duration; use data_model::*; -use sys_util::{Error, EventFd, GuestAddress, GuestMemory, PollContext, PollToken}; +use sys_util::{ + debug, error, warn, Error, EventFd, GuestAddress, GuestMemory, PollContext, PollToken, +}; use gpu_buffer::Device; use gpu_display::*; diff --git a/devices/src/virtio/input/evdev.rs b/devices/src/virtio/input/evdev.rs index 34fedb9..6301dfa 100644 --- a/devices/src/virtio/input/evdev.rs +++ b/devices/src/virtio/input/evdev.rs @@ -5,7 +5,7 @@ use std::os::unix::io::AsRawFd; use data_model::Le32; -use sys_util::{ioctl_with_mut_ref, ioctl_with_ptr, ioctl_with_ref}; +use sys_util::{ioctl_ior_nr, ioctl_iow_nr, ioctl_with_mut_ref, ioctl_with_ptr, ioctl_with_ref}; use super::constants::*; use super::virtio_input_absinfo; diff --git a/devices/src/virtio/input/event_source.rs b/devices/src/virtio/input/event_source.rs index 48ed192..56bb54a 100644 --- a/devices/src/virtio/input/event_source.rs +++ b/devices/src/virtio/input/event_source.rs @@ -13,6 +13,7 @@ use std::io::Read; use std::io::Write; use std::mem::size_of; use std::os::unix::io::{AsRawFd, RawFd}; +use sys_util::{error, warn}; #[derive(Copy, Clone, Debug, Default)] #[repr(C)] diff --git a/devices/src/virtio/input/mod.rs b/devices/src/virtio/input/mod.rs index 98dac60..b44ca86 100644 --- a/devices/src/virtio/input/mod.rs +++ b/devices/src/virtio/input/mod.rs @@ -13,7 +13,7 @@ use self::constants::*; use std::os::unix::io::{AsRawFd, RawFd}; use data_model::{DataInit, Le16, Le32}; -use sys_util::{EventFd, GuestMemory, PollContext, PollToken}; +use sys_util::{error, warn, EventFd, GuestMemory, PollContext, PollToken}; use self::event_source::{input_event, EvdevEventSource, EventSource, SocketEventSource}; use super::{Queue, VirtioDevice, INTERRUPT_STATUS_USED_RING, TYPE_INPUT}; diff --git a/devices/src/virtio/net.rs b/devices/src/virtio/net.rs index ab37cf0..a492561 100644 --- a/devices/src/virtio/net.rs +++ b/devices/src/virtio/net.rs @@ -15,7 +15,7 @@ use libc::EAGAIN; use net_sys; use net_util::{Error as TapError, MacAddress, TapT}; use sys_util::Error as SysError; -use sys_util::{EventFd, GuestMemory, PollContext, PollToken}; +use sys_util::{error, warn, EventFd, GuestMemory, PollContext, PollToken}; use virtio_sys::virtio_net::virtio_net_hdr_v1; use virtio_sys::{vhost, virtio_net}; diff --git a/devices/src/virtio/p9.rs b/devices/src/virtio/p9.rs index 636a1dc..6bfa41c 100644 --- a/devices/src/virtio/p9.rs +++ b/devices/src/virtio/p9.rs @@ -15,7 +15,9 @@ use std::sync::Arc; use std::thread; use p9; -use sys_util::{Error as SysError, EventFd, GuestAddress, GuestMemory, PollContext, PollToken}; +use sys_util::{ + error, warn, Error as SysError, EventFd, GuestAddress, GuestMemory, PollContext, PollToken, +}; use virtio_sys::vhost::VIRTIO_F_VERSION_1; use super::{DescriptorChain, Queue, VirtioDevice, INTERRUPT_STATUS_USED_RING, TYPE_9P}; diff --git a/devices/src/virtio/queue.rs b/devices/src/virtio/queue.rs index 0f596ba..7d00b34 100644 --- a/devices/src/virtio/queue.rs +++ b/devices/src/virtio/queue.rs @@ -6,7 +6,7 @@ use std::cmp::min; use std::num::Wrapping; use std::sync::atomic::{fence, Ordering}; -use sys_util::{GuestAddress, GuestMemory}; +use sys_util::{error, GuestAddress, GuestMemory}; const VIRTQ_DESC_F_NEXT: u16 = 0x1; const VIRTQ_DESC_F_WRITE: u16 = 0x2; diff --git a/devices/src/virtio/rng.rs b/devices/src/virtio/rng.rs index 7b3d9f7..b8e49f7 100644 --- a/devices/src/virtio/rng.rs +++ b/devices/src/virtio/rng.rs @@ -11,7 +11,7 @@ use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::Arc; use std::thread; -use sys_util::{EventFd, GuestMemory, PollContext, PollToken}; +use sys_util::{error, EventFd, GuestMemory, PollContext, PollToken}; use super::{Queue, VirtioDevice, INTERRUPT_STATUS_USED_RING, TYPE_RNG}; diff --git a/devices/src/virtio/tpm.rs b/devices/src/virtio/tpm.rs index 63e4d72..eea71c2 100644 --- a/devices/src/virtio/tpm.rs +++ b/devices/src/virtio/tpm.rs @@ -12,7 +12,7 @@ use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::Arc; use std::thread; -use sys_util::{EventFd, GuestMemory, GuestMemoryError, PollContext, PollToken}; +use sys_util::{error, EventFd, GuestMemory, GuestMemoryError, PollContext, PollToken}; use tpm2; use super::{DescriptorChain, Queue, VirtioDevice, INTERRUPT_STATUS_USED_RING, TYPE_TPM}; diff --git a/devices/src/virtio/vhost/net.rs b/devices/src/virtio/vhost/net.rs index 15907f2..d2e7e55 100644 --- a/devices/src/virtio/vhost/net.rs +++ b/devices/src/virtio/vhost/net.rs @@ -13,7 +13,7 @@ use net_sys; use net_util::{MacAddress, TapT}; use ::vhost::NetT as VhostNetT; -use sys_util::{EventFd, GuestMemory}; +use sys_util::{error, warn, EventFd, GuestMemory}; use virtio_sys::{vhost, virtio_net}; use super::worker::Worker; diff --git a/devices/src/virtio/vhost/vsock.rs b/devices/src/virtio/vhost/vsock.rs index 008d920..7f4c457 100644 --- a/devices/src/virtio/vhost/vsock.rs +++ b/devices/src/virtio/vhost/vsock.rs @@ -10,7 +10,7 @@ use std::thread; use byteorder::{ByteOrder, LittleEndian}; use ::vhost::Vsock as VhostVsockHandle; -use sys_util::{EventFd, GuestMemory}; +use sys_util::{error, warn, EventFd, GuestMemory}; use virtio_sys::vhost; use super::worker::Worker; diff --git a/devices/src/virtio/virtio_pci_common_config.rs b/devices/src/virtio/virtio_pci_common_config.rs index 59b2b0a..2fef26e 100644 --- a/devices/src/virtio/virtio_pci_common_config.rs +++ b/devices/src/virtio/virtio_pci_common_config.rs @@ -3,7 +3,7 @@ // found in the LICENSE file. use byteorder::{ByteOrder, LittleEndian}; -use sys_util::GuestAddress; +use sys_util::{warn, GuestAddress}; use super::*; diff --git a/devices/src/virtio/wl.rs b/devices/src/virtio/wl.rs index 4a6d59d..2352998 100644 --- a/devices/src/virtio/wl.rs +++ b/devices/src/virtio/wl.rs @@ -59,8 +59,10 @@ use data_model::*; use msg_socket::{MsgError, MsgReceiver, MsgSender}; #[cfg(feature = "wl-dmabuf")] use resources::GpuMemoryDesc; +#[cfg(feature = "wl-dmabuf")] +use sys_util::ioctl_iow_nr; use sys_util::{ - pipe, round_up_to_page_size, Error, EventFd, FileFlags, GuestAddress, GuestMemory, + error, pipe, round_up_to_page_size, warn, Error, EventFd, FileFlags, GuestAddress, GuestMemory, GuestMemoryError, PollContext, PollToken, Result, ScmSocket, SharedMemory, }; diff --git a/enumn/src/lib.rs b/enumn/src/lib.rs index b928b11..417ba96 100644 --- a/enumn/src/lib.rs +++ b/enumn/src/lib.rs @@ -23,9 +23,9 @@ //! # Example //! //! ```rust -//! extern crate enumn; +//! use enumn::N; //! -//! #[derive(PartialEq, Debug, enumn::N)] +//! #[derive(PartialEq, Debug, N)] //! enum Status { //! LegendaryTriumph, //! QualifiedSuccess, @@ -52,7 +52,9 @@ //! of that type. //! //! ```rust -//! #[derive(enumn::N)] +//! use enumn::N; +//! +//! #[derive(N)] //! #[repr(u8)] //! enum E { //! /* ... */ @@ -88,7 +90,9 @@ //! this enum: //! //! ```rust -//! #[derive(enumn::N)] +//! use enumn::N; +//! +//! #[derive(N)] //! enum Letter { //! A = 65, //! B = 66, diff --git a/gpu_buffer/src/rendernode.rs b/gpu_buffer/src/rendernode.rs index b9849e0..503d712 100644 --- a/gpu_buffer/src/rendernode.rs +++ b/gpu_buffer/src/rendernode.rs @@ -10,7 +10,7 @@ use std::os::raw::{c_char, c_int, c_uint}; use std::path::Path; use std::ptr::null_mut; -use sys_util::ioctl_with_mut_ref; +use sys_util::{ioctl_iowr_nr, ioctl_with_mut_ref}; // Consistent with __kernel_size_t in include/uapi/asm-generic/posix_types.h. #[cfg(not(target_pointer_width = "64"))] diff --git a/kvm/src/lib.rs b/kvm/src/lib.rs index cae377d..67a2f23 100644 --- a/kvm/src/lib.rs +++ b/kvm/src/lib.rs @@ -29,10 +29,8 @@ use msg_socket::MsgOnSocket; #[allow(unused_imports)] use sys_util::{ ioctl, ioctl_with_mut_ptr, ioctl_with_mut_ref, ioctl_with_ptr, ioctl_with_ref, ioctl_with_val, -}; -use sys_util::{ - pagesize, signal, Error, EventFd, GuestAddress, GuestMemory, MemoryMapping, MemoryMappingArena, - Result, + pagesize, signal, warn, Error, EventFd, GuestAddress, GuestMemory, MemoryMapping, + MemoryMappingArena, Result, }; pub use crate::cap::*; diff --git a/kvm_sys/src/lib.rs b/kvm_sys/src/lib.rs index efcc706..bea9242 100644 --- a/kvm_sys/src/lib.rs +++ b/kvm_sys/src/lib.rs @@ -9,6 +9,8 @@ #[macro_use] extern crate sys_util; +use sys_util::{ioctl_io_nr, ioctl_ior_nr, ioctl_iow_nr, ioctl_iowr_nr}; + // Somehow this one gets missed by bindgen pub const KVM_EXIT_IO_OUT: ::std::os::raw::c_uint = 1; @@ -20,6 +22,7 @@ pub mod x86 { #[cfg_attr(feature = "cargo-clippy", allow(clippy))] pub mod bindings; pub use crate::bindings::*; + use sys_util::{ioctl_ior_nr, ioctl_iow_nr, ioctl_iowr_nr}; ioctl_iow_nr!(KVM_SET_GSI_ROUTING, KVMIO, 0x6a, kvm_irq_routing); ioctl_iowr_nr!(KVM_GET_MSR_INDEX_LIST, KVMIO, 0x02, kvm_msr_list); @@ -54,6 +57,7 @@ pub mod aarch64 { // generated with bindgen <arm sysroot>/usr/include/linux/kvm.h --no-unstable-rust --constified-enum '*' --with-derive-default -- -I<arm sysroot>/usr/include pub mod bindings; pub use bindings::*; + use sys_util::{ioctl_ior_nr, ioctl_iow_nr}; ioctl_iow_nr!(KVM_ARM_SET_DEVICE_ADDR, KVMIO, 0xab, kvm_arm_device_addr); ioctl_iow_nr!(KVM_ARM_VCPU_INIT, KVMIO, 0xae, kvm_vcpu_init); diff --git a/msg_socket/msg_on_socket_derive/msg_on_socket_derive.rs b/msg_socket/msg_on_socket_derive/msg_on_socket_derive.rs index 724a29c..bb90255 100644 --- a/msg_socket/msg_on_socket_derive/msg_on_socket_derive.rs +++ b/msg_socket/msg_on_socket_derive/msg_on_socket_derive.rs @@ -15,7 +15,8 @@ extern crate syn; use std::vec::Vec; use proc_macro2::{Span, TokenStream}; -use syn::{Data, DataEnum, DataStruct, DeriveInput, Fields, Ident}; +use quote::quote; +use syn::{parse_macro_input, Data, DataEnum, DataStruct, DeriveInput, Fields, Ident}; /// The function that derives the recursive implementation for struct or enum. #[proc_macro_derive(MsgOnSocket)] diff --git a/msg_socket/src/lib.rs b/msg_socket/src/lib.rs index a43e030..c3cc411 100644 --- a/msg_socket/src/lib.rs +++ b/msg_socket/src/lib.rs @@ -16,7 +16,7 @@ use std::marker::PhantomData; use std::ops::Deref; use std::os::unix::io::{AsRawFd, RawFd}; -use sys_util::{net::UnixSeqpacket, Error as SysError, ScmSocket}; +use sys_util::{handle_eintr, net::UnixSeqpacket, Error as SysError, ScmSocket}; pub use crate::msg_on_socket::*; pub use msg_on_socket_derive::*; diff --git a/net_sys/src/lib.rs b/net_sys/src/lib.rs index b0b0d53..4be0a16 100644 --- a/net_sys/src/lib.rs +++ b/net_sys/src/lib.rs @@ -9,6 +9,8 @@ #[macro_use] extern crate sys_util; +use sys_util::{ioctl_ior_nr, ioctl_iow_nr}; + // generated with bindgen /usr/include/linux/if.h --no-unstable-rust // --constified-enum '*' --with-derive-default -- -D __UAPI_DEF_IF_IFNAMSIZ -D // __UAPI_DEF_IF_NET_DEVICE_FLAGS -D __UAPI_DEF_IF_IFREQ -D __UAPI_DEF_IF_IFMAP diff --git a/p9/src/protocol/messages.rs b/p9/src/protocol/messages.rs index b5a03c0..f149e3c 100644 --- a/p9/src/protocol/messages.rs +++ b/p9/src/protocol/messages.rs @@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +use wire_format_derive::P9WireFormat; + use std::io::{self, ErrorKind, Read, Write}; use std::mem; use std::string::String; diff --git a/p9/src/protocol/wire_format.rs b/p9/src/protocol/wire_format.rs index bd3d67b..84408e2 100644 --- a/p9/src/protocol/wire_format.rs +++ b/p9/src/protocol/wire_format.rs @@ -207,6 +207,7 @@ mod test { use std::io::Cursor; use std::mem; use std::string::String; + use wire_format_derive::P9WireFormat; #[test] fn integer_byte_size() { diff --git a/p9/wire_format_derive/wire_format_derive.rs b/p9/wire_format_derive/wire_format_derive.rs index 802b19b..38af595 100644 --- a/p9/wire_format_derive/wire_format_derive.rs +++ b/p9/wire_format_derive/wire_format_derive.rs @@ -18,8 +18,9 @@ extern crate quote; extern crate syn; use proc_macro2::{Span, TokenStream}; +use quote::{quote, quote_spanned}; use syn::spanned::Spanned; -use syn::{Data, DeriveInput, Fields, Ident}; +use syn::{parse_macro_input, Data, DeriveInput, Fields, Ident}; /// The function that derives the actual implementation. #[proc_macro_derive(P9WireFormat)] @@ -155,6 +156,7 @@ fn decode_wire_format(data: &Data, container: &Ident) -> TokenStream { #[cfg(test)] mod tests { use super::*; + use syn::parse_quote; #[test] fn byte_size() { diff --git a/qcow/src/qcow.rs b/qcow/src/qcow.rs index 8178212..9015bb1 100644 --- a/qcow/src/qcow.rs +++ b/qcow/src/qcow.rs @@ -15,7 +15,7 @@ mod vec_cache; use byteorder::{BigEndian, ReadBytesExt, WriteBytesExt}; use libc::{EINVAL, ENOSPC, ENOTSUP}; use remain::sorted; -use sys_util::{FileSetLen, FileSync, PunchHole, SeekHole, WriteZeroes}; +use sys_util::{error, FileSetLen, FileSync, PunchHole, SeekHole, WriteZeroes}; use std::cmp::min; use std::fmt::{self, Display}; diff --git a/src/linux.rs b/src/linux.rs index 78e5740..730de9c 100644 --- a/src/linux.rs +++ b/src/linux.rs @@ -37,10 +37,10 @@ use remain::sorted; use sync::{Condvar, Mutex}; use sys_util::net::{UnixSeqpacket, UnixSeqpacketListener, UnlinkUnixSeqpacketListener}; use sys_util::{ - self, block_signal, clear_signal, drop_capabilities, flock, get_blocked_signals, get_group_id, - get_user_id, getegid, geteuid, register_signal_handler, set_cpu_affinity, validate_raw_fd, - EventFd, FlockOperation, GuestMemory, Killable, PollContext, PollToken, SignalFd, Terminal, - TimerFd, SIGRTMIN, + self, block_signal, clear_signal, drop_capabilities, error, flock, get_blocked_signals, + get_group_id, get_user_id, getegid, geteuid, info, register_signal_handler, set_cpu_affinity, + validate_raw_fd, warn, EventFd, FlockOperation, GuestMemory, Killable, PollContext, PollToken, + SignalFd, Terminal, TimerFd, SIGRTMIN, }; #[cfg(feature = "gpu-forward")] use sys_util::{GuestAddress, MemoryMapping, Protection}; diff --git a/src/main.rs b/src/main.rs index c000ac8..b1d2cb2 100644 --- a/src/main.rs +++ b/src/main.rs @@ -57,7 +57,8 @@ use std::time::Duration; use msg_socket::{MsgReceiver, MsgSender, MsgSocket}; use qcow::QcowFile; use sys_util::{ - getpid, kill_process_group, net::UnixSeqpacket, reap_child, syslog, validate_raw_fd, + debug, error, getpid, info, kill_process_group, net::UnixSeqpacket, reap_child, syslog, + validate_raw_fd, warn, }; use vm_control::{ MaybeOwnedFd, UsbControlCommand, UsbControlResult, VmControlRequestSocket, VmRequest, diff --git a/src/panic_hook.rs b/src/panic_hook.rs index 7f93d91..48cf0c5 100644 --- a/src/panic_hook.rs +++ b/src/panic_hook.rs @@ -11,6 +11,7 @@ use std::process::abort; use std::string::String; use libc::{close, dup, dup2, pipe2, O_NONBLOCK, STDERR_FILENO}; +use sys_util::error; // Opens a pipe and puts the write end into the stderr FD slot. On success, returns the read end of // the pipe and the old stderr as a pair of files. diff --git a/src/plugin/mod.rs b/src/plugin/mod.rs index f37f2eb..60a50da 100644 --- a/src/plugin/mod.rs +++ b/src/plugin/mod.rs @@ -29,9 +29,10 @@ use io_jail::{self, Minijail}; use kvm::{Datamatch, IoeventAddress, Kvm, Vcpu, VcpuExit, Vm}; use net_util::{Error as TapError, Tap, TapT}; use sys_util::{ - block_signal, clear_signal, drop_capabilities, getegid, geteuid, register_signal_handler, - validate_raw_fd, Error as SysError, EventFd, GuestMemory, Killable, MmapError, PollContext, - PollToken, Result as SysResult, SignalFd, SignalFdError, SIGRTMIN, + block_signal, clear_signal, drop_capabilities, error, getegid, geteuid, info, + register_signal_handler, validate_raw_fd, warn, Error as SysError, EventFd, GuestMemory, + Killable, MmapError, PollContext, PollToken, Result as SysResult, SignalFd, SignalFdError, + SIGRTMIN, }; use self::process::*; diff --git a/src/plugin/process.rs b/src/plugin/process.rs index b249cea..6b05bac 100644 --- a/src/plugin/process.rs +++ b/src/plugin/process.rs @@ -28,7 +28,7 @@ use kvm_sys::{kvm_clock_data, kvm_ioapic_state, kvm_pic_state, kvm_pit_state2}; use protos::plugin::*; use sync::Mutex; use sys_util::{ - Error as SysError, EventFd, GuestAddress, Killable, MemoryMapping, Result as SysResult, + error, Error as SysError, EventFd, GuestAddress, Killable, MemoryMapping, Result as SysResult, ScmSocket, SharedMemory, SIGRTMIN, }; diff --git a/src/plugin/vcpu.rs b/src/plugin/vcpu.rs index 1e6b782..307e1a0 100644 --- a/src/plugin/vcpu.rs +++ b/src/plugin/vcpu.rs @@ -23,6 +23,7 @@ use kvm_sys::{ }; use protos::plugin::*; use sync::Mutex; +use sys_util::error; use super::*; diff --git a/sys_util/src/poll.rs b/sys_util/src/poll.rs index 61af285..2f15198 100644 --- a/sys_util/src/poll.rs +++ b/sys_util/src/poll.rs @@ -624,6 +624,7 @@ impl<T: PollToken> IntoRawFd for PollContext<T> { mod tests { use super::*; use crate::EventFd; + use poll_token_derive::PollToken; use std::os::unix::net::UnixStream; use std::time::Instant; diff --git a/virtio_sys/src/lib.rs b/virtio_sys/src/lib.rs index 7984d80..eb74225 100644 --- a/virtio_sys/src/lib.rs +++ b/virtio_sys/src/lib.rs @@ -9,6 +9,8 @@ #[macro_use] extern crate sys_util; +use sys_util::{ioctl_io_nr, ioctl_ior_nr, ioctl_iow_nr, ioctl_iowr_nr}; + // generated with bindgen /usr/include/linux/vhost.h --no-unstable-rust --constified-enum '*' --with-derive-default pub mod vhost; // generated with bindgen /usr/include/linux/virtio_net.h --no-unstable-rust --constified-enum '*' --with-derive-default diff --git a/vm_control/src/lib.rs b/vm_control/src/lib.rs index 6573c9a..79d95ed 100644 --- a/vm_control/src/lib.rs +++ b/vm_control/src/lib.rs @@ -30,7 +30,8 @@ use kvm::{Datamatch, IoeventAddress, Vm}; use msg_socket::{MsgOnSocket, MsgReceiver, MsgResult, MsgSender, MsgSocket}; use resources::{GpuMemoryDesc, SystemAllocator}; use sys_util::{ - net::UnixSeqpacket, Error as SysError, EventFd, GuestAddress, MemoryMapping, MmapError, Result, + error, net::UnixSeqpacket, Error as SysError, EventFd, GuestAddress, MemoryMapping, MmapError, + Result, }; /// A file descriptor either borrowed or owned by this. |