mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2026-08-05 02:19:16 +00:00
misc: Further improve imports styling
By introducing `imports_granularity="Module"` format strategy, effectively groups imports from the same module into one line or block, improving maintainability and readability. Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn>
This commit is contained in:
@@ -5,9 +5,11 @@
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::time::Instant;
|
||||
|
||||
use acpi_tables::rsdp::Rsdp;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use acpi_tables::sdt::GenericAddress;
|
||||
use acpi_tables::{rsdp::Rsdp, sdt::Sdt, Aml};
|
||||
use acpi_tables::sdt::Sdt;
|
||||
use acpi_tables::Aml;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use arch::aarch64::DeviceInfoForFdt;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
|
||||
@@ -26,8 +26,7 @@ use crate::api::{
|
||||
VmSendMigration, VmShutdown, VmSnapshot, VmmPing, VmmShutdown,
|
||||
};
|
||||
use crate::seccomp_filters::{get_seccomp_filter, Thread};
|
||||
use crate::{Error as VmmError, Result as VmmResult};
|
||||
use crate::{NetConfig, VmConfig};
|
||||
use crate::{Error as VmmError, NetConfig, Result as VmmResult, VmConfig};
|
||||
|
||||
pub type DBusApiShutdownChannels = (oneshot::Sender<()>, oneshot::Receiver<()>);
|
||||
|
||||
|
||||
@@ -45,8 +45,7 @@ use vmm_sys_util::eventfd::EventFd;
|
||||
|
||||
#[cfg(feature = "dbus_api")]
|
||||
pub use self::dbus::start_dbus_thread;
|
||||
pub use self::http::start_http_fd_thread;
|
||||
pub use self::http::start_http_path_thread;
|
||||
pub use self::http::{start_http_fd_thread, start_http_path_thread};
|
||||
use crate::config::{
|
||||
DeviceConfig, DiskConfig, FsConfig, NetConfig, PmemConfig, RestoreConfig, UserDeviceConfig,
|
||||
VdpaConfig, VmConfig, VsockConfig,
|
||||
|
||||
@@ -4,10 +4,9 @@
|
||||
//
|
||||
|
||||
use std::collections::{BTreeSet, HashMap};
|
||||
use std::fmt;
|
||||
use std::path::PathBuf;
|
||||
use std::result;
|
||||
use std::str::FromStr;
|
||||
use std::{fmt, result};
|
||||
|
||||
use clap::ArgMatches;
|
||||
use option_parser::{
|
||||
|
||||
@@ -10,27 +10,16 @@
|
||||
// SPDX-License-Identifier: Apache-2.0 AND BSD-3-Clause
|
||||
//
|
||||
|
||||
use std::fs::read_link;
|
||||
use std::fs::File;
|
||||
use std::fs::OpenOptions;
|
||||
use std::io;
|
||||
use std::fs::{read_link, File, OpenOptions};
|
||||
use std::mem::zeroed;
|
||||
use std::os::fd::AsRawFd;
|
||||
use std::os::fd::FromRawFd;
|
||||
use std::os::fd::RawFd;
|
||||
use std::os::fd::{AsRawFd, FromRawFd, RawFd};
|
||||
use std::os::unix::fs::OpenOptionsExt;
|
||||
use std::os::unix::net::UnixListener;
|
||||
use std::path::PathBuf;
|
||||
use std::result;
|
||||
use std::sync::Arc;
|
||||
use std::sync::Mutex;
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::{io, result};
|
||||
|
||||
use libc::cfmakeraw;
|
||||
use libc::isatty;
|
||||
use libc::tcgetattr;
|
||||
use libc::tcsetattr;
|
||||
use libc::termios;
|
||||
use libc::TCSANOW;
|
||||
use libc::{cfmakeraw, isatty, tcgetattr, tcsetattr, termios, TCSANOW};
|
||||
use thiserror::Error;
|
||||
|
||||
use crate::sigwinch_listener::listen_for_sigwinch_on_tty;
|
||||
|
||||
@@ -21,14 +21,14 @@ use std::sync::atomic::{AtomicBool, Ordering};
|
||||
use std::sync::{Arc, Barrier, Mutex};
|
||||
use std::{cmp, io, result, thread};
|
||||
|
||||
use acpi_tables::{aml, sdt::Sdt, Aml};
|
||||
use acpi_tables::sdt::Sdt;
|
||||
use acpi_tables::{aml, Aml};
|
||||
use anyhow::anyhow;
|
||||
#[cfg(all(target_arch = "aarch64", feature = "guest_debug"))]
|
||||
use arch::aarch64::regs;
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use arch::x86_64::get_x2apic_id;
|
||||
use arch::EntryPoint;
|
||||
use arch::NumaNodes;
|
||||
use arch::{EntryPoint, NumaNodes};
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use devices::gic::Gic;
|
||||
use devices::interrupt_controller::InterruptController;
|
||||
@@ -91,8 +91,7 @@ use crate::memory_manager::MemoryManager;
|
||||
use crate::seccomp_filters::{get_seccomp_filter, Thread};
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use crate::vm::physical_bits;
|
||||
use crate::GuestMemoryMmap;
|
||||
use crate::CPU_MANAGER_SNAPSHOT_ID;
|
||||
use crate::{GuestMemoryMmap, CPU_MANAGER_SNAPSHOT_ID};
|
||||
#[cfg(all(target_arch = "aarch64", feature = "guest_debug"))]
|
||||
/// Extract the specified bits of a 64-bit integer.
|
||||
/// For example, to extrace 2 bits from offset 1 (zero based) of `6u64`,
|
||||
@@ -2806,8 +2805,7 @@ impl CpuElf64Writable for CpuManager {
|
||||
#[cfg(all(feature = "kvm", target_arch = "x86_64"))]
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use arch::layout::BOOT_STACK_POINTER;
|
||||
use arch::layout::ZERO_PAGE_START;
|
||||
use arch::layout::{BOOT_STACK_POINTER, ZERO_PAGE_START};
|
||||
use arch::x86_64::interrupts::*;
|
||||
use arch::x86_64::regs::*;
|
||||
use hypervisor::arch::x86::{FpuState, LapicState};
|
||||
@@ -2947,7 +2945,8 @@ mod tests {
|
||||
mod tests {
|
||||
use std::mem;
|
||||
|
||||
use arch::{aarch64::regs, layout};
|
||||
use arch::aarch64::regs;
|
||||
use arch::layout;
|
||||
use hypervisor::kvm::aarch64::is_system_register;
|
||||
use hypervisor::kvm::kvm_bindings::{
|
||||
kvm_vcpu_init, user_pt_regs, KVM_REG_ARM64, KVM_REG_ARM64_SYSREG, KVM_REG_ARM_CORE,
|
||||
|
||||
@@ -23,16 +23,19 @@ use std::time::Instant;
|
||||
use acpi_tables::sdt::GenericAddress;
|
||||
use acpi_tables::{aml, Aml};
|
||||
use anyhow::anyhow;
|
||||
use arch::layout;
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use arch::layout::{APIC_START, IOAPIC_SIZE, IOAPIC_START};
|
||||
use arch::NumaNodes;
|
||||
use arch::{layout, NumaNodes};
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use arch::{DeviceType, MmioDeviceInfo};
|
||||
use block::async_io::DiskFile;
|
||||
use block::fixed_vhd_sync::FixedVhdDiskSync;
|
||||
use block::qcow_sync::QcowDiskSync;
|
||||
use block::raw_async_aio::RawFileDiskAio;
|
||||
use block::raw_sync::RawFileDiskSync;
|
||||
use block::vhdx_sync::VhdxDiskSync;
|
||||
use block::{
|
||||
async_io::DiskFile, block_aio_is_supported, block_io_uring_is_supported, detect_image_type,
|
||||
fixed_vhd_sync::FixedVhdDiskSync, qcow, qcow_sync::QcowDiskSync, raw_async_aio::RawFileDiskAio,
|
||||
raw_sync::RawFileDiskSync, vhdx, vhdx_sync::VhdxDiskSync, ImageType,
|
||||
block_aio_is_supported, block_io_uring_is_supported, detect_image_type, qcow, vhdx, ImageType,
|
||||
};
|
||||
#[cfg(feature = "io_uring")]
|
||||
use block::{fixed_vhd_async::FixedVhdDiskAsync, raw_async::RawFileDisk};
|
||||
@@ -40,15 +43,14 @@ use block::{fixed_vhd_async::FixedVhdDiskAsync, raw_async::RawFileDisk};
|
||||
use devices::debug_console::DebugConsole;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use devices::gic;
|
||||
use devices::interrupt_controller::InterruptController;
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use devices::ioapic;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use devices::legacy::Pl011;
|
||||
#[cfg(feature = "pvmemcontrol")]
|
||||
use devices::pvmemcontrol::{PvmemcontrolBusDevice, PvmemcontrolPciDevice};
|
||||
use devices::{
|
||||
interrupt_controller, interrupt_controller::InterruptController, AcpiNotificationFlags,
|
||||
};
|
||||
use devices::{interrupt_controller, AcpiNotificationFlags};
|
||||
use hypervisor::IoEventAddress;
|
||||
use libc::{
|
||||
tcsetattr, termios, MAP_NORESERVE, MAP_PRIVATE, MAP_SHARED, O_TMPFILE, PROT_READ, PROT_WRITE,
|
||||
@@ -63,13 +65,12 @@ use seccompiler::SeccompAction;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use tracer::trace_scoped;
|
||||
use vfio_ioctls::{VfioContainer, VfioDevice, VfioDeviceFd};
|
||||
use virtio_devices::transport::VirtioTransport;
|
||||
use virtio_devices::transport::{VirtioPciDevice, VirtioPciDeviceActivator};
|
||||
use virtio_devices::transport::{VirtioPciDevice, VirtioPciDeviceActivator, VirtioTransport};
|
||||
use virtio_devices::vhost_user::VhostUserConfig;
|
||||
use virtio_devices::{
|
||||
AccessPlatformMapping, ActivateError, VdpaDmaMapping, VirtioMemMappingSource,
|
||||
AccessPlatformMapping, ActivateError, Endpoint, IommuMapping, VdpaDmaMapping,
|
||||
VirtioMemMappingSource,
|
||||
};
|
||||
use virtio_devices::{Endpoint, IommuMapping};
|
||||
use vm_allocator::{AddressAllocator, SystemAllocator};
|
||||
use vm_device::dma_mapping::ExternalDmaMapping;
|
||||
use vm_device::interrupt::{
|
||||
@@ -77,16 +78,15 @@ use vm_device::interrupt::{
|
||||
};
|
||||
use vm_device::{Bus, BusDevice, BusDeviceSync, Resource};
|
||||
use vm_memory::guest_memory::FileOffset;
|
||||
use vm_memory::GuestMemoryRegion;
|
||||
use vm_memory::{Address, GuestAddress, GuestUsize, MmapRegion};
|
||||
use vm_memory::{Address, GuestAddress, GuestMemoryRegion, GuestUsize, MmapRegion};
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use vm_memory::{GuestAddressSpace, GuestMemory};
|
||||
use vm_migration::protocol::MemoryRangeTable;
|
||||
use vm_migration::{
|
||||
protocol::MemoryRangeTable, snapshot_from_id, state_from_id, Migratable, MigratableError,
|
||||
Pausable, Snapshot, SnapshotData, Snapshottable, Transportable,
|
||||
snapshot_from_id, state_from_id, Migratable, MigratableError, Pausable, Snapshot, SnapshotData,
|
||||
Snapshottable, Transportable,
|
||||
};
|
||||
use vm_virtio::AccessPlatform;
|
||||
use vm_virtio::VirtioDeviceType;
|
||||
use vm_virtio::{AccessPlatform, VirtioDeviceType};
|
||||
use vmm_sys_util::eventfd::EventFd;
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use {devices::debug_console, devices::legacy::Serial};
|
||||
@@ -98,15 +98,12 @@ use crate::config::{
|
||||
use crate::console_devices::{ConsoleDeviceError, ConsoleInfo, ConsoleOutput};
|
||||
use crate::cpu::{CpuManager, CPU_MANAGER_ACPI_SIZE};
|
||||
use crate::device_tree::{DeviceNode, DeviceTree};
|
||||
use crate::interrupt::LegacyUserspaceInterruptManager;
|
||||
use crate::interrupt::MsiInterruptManager;
|
||||
use crate::interrupt::{LegacyUserspaceInterruptManager, MsiInterruptManager};
|
||||
use crate::memory_manager::{Error as MemoryManagerError, MemoryManager, MEMORY_MANAGER_ACPI_SIZE};
|
||||
use crate::pci_segment::PciSegment;
|
||||
use crate::serial_manager::{Error as SerialManagerError, SerialManager};
|
||||
use crate::vm_config::DEFAULT_PCI_SEGMENT_APERTURE_WEIGHT;
|
||||
use crate::GuestRegionMmap;
|
||||
use crate::PciDeviceInfo;
|
||||
use crate::{device_node, DEVICE_MANAGER_SNAPSHOT_ID};
|
||||
use crate::{device_node, GuestRegionMmap, PciDeviceInfo, DEVICE_MANAGER_SNAPSHOT_ID};
|
||||
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
const MMIO_LEN: u64 = 0x1000;
|
||||
|
||||
@@ -5,27 +5,22 @@
|
||||
//
|
||||
// SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
use std::{os::unix::net::UnixListener, sync::mpsc};
|
||||
use std::os::unix::net::UnixListener;
|
||||
use std::sync::mpsc;
|
||||
|
||||
use gdbstub::{
|
||||
arch::Arch,
|
||||
common::{Signal, Tid},
|
||||
conn::{Connection, ConnectionExt},
|
||||
stub::{run_blocking, DisconnectReason, MultiThreadStopReason},
|
||||
target::{
|
||||
ext::{
|
||||
base::{
|
||||
multithread::{
|
||||
MultiThreadBase, MultiThreadResume, MultiThreadResumeOps,
|
||||
MultiThreadSingleStep, MultiThreadSingleStepOps,
|
||||
},
|
||||
BaseOps,
|
||||
},
|
||||
breakpoints::{Breakpoints, BreakpointsOps, HwBreakpoint, HwBreakpointOps},
|
||||
},
|
||||
Target, TargetError, TargetResult,
|
||||
},
|
||||
use gdbstub::arch::Arch;
|
||||
use gdbstub::common::{Signal, Tid};
|
||||
use gdbstub::conn::{Connection, ConnectionExt};
|
||||
use gdbstub::stub::{run_blocking, DisconnectReason, MultiThreadStopReason};
|
||||
use gdbstub::target::ext::base::multithread::{
|
||||
MultiThreadBase, MultiThreadResume, MultiThreadResumeOps, MultiThreadSingleStep,
|
||||
MultiThreadSingleStepOps,
|
||||
};
|
||||
use gdbstub::target::ext::base::BaseOps;
|
||||
use gdbstub::target::ext::breakpoints::{
|
||||
Breakpoints, BreakpointsOps, HwBreakpoint, HwBreakpointOps,
|
||||
};
|
||||
use gdbstub::target::{Target, TargetError, TargetResult};
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use gdbstub_arch::aarch64::reg::AArch64CoreRegs as CoreRegs;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
|
||||
@@ -4,13 +4,12 @@
|
||||
//
|
||||
use std::collections::HashMap;
|
||||
use std::ffi::CString;
|
||||
use std::io::Read;
|
||||
use std::io::Seek;
|
||||
use std::io::SeekFrom;
|
||||
use std::io::{Read, Seek, SeekFrom};
|
||||
use std::mem::size_of;
|
||||
use std::sync::{Arc, Mutex};
|
||||
|
||||
use igvm::{snp_defs::SevVmsa, IgvmDirectiveHeader, IgvmFile, IgvmPlatformHeader, IsolationType};
|
||||
use igvm::snp_defs::SevVmsa;
|
||||
use igvm::{IgvmDirectiveHeader, IgvmFile, IgvmPlatformHeader, IsolationType};
|
||||
use igvm_defs::{
|
||||
IgvmPageDataType, IgvmPlatformType, IGVM_VHS_PARAMETER, IGVM_VHS_PARAMETER_INSERT,
|
||||
};
|
||||
@@ -21,9 +20,8 @@ use thiserror::Error;
|
||||
use zerocopy::AsBytes;
|
||||
|
||||
use crate::cpu::CpuManager;
|
||||
use crate::igvm::{
|
||||
loader::Loader, BootPageAcceptance, IgvmLoadedInfo, StartupMemoryType, HV_PAGE_SIZE,
|
||||
};
|
||||
use crate::igvm::loader::Loader;
|
||||
use crate::igvm::{BootPageAcceptance, IgvmLoadedInfo, StartupMemoryType, HV_PAGE_SIZE};
|
||||
use crate::memory_manager::MemoryManager;
|
||||
#[cfg(feature = "sev_snp")]
|
||||
use crate::GuestMemoryMmap;
|
||||
|
||||
@@ -10,18 +10,16 @@ extern crate log;
|
||||
|
||||
use std::collections::HashMap;
|
||||
use std::fs::File;
|
||||
use std::io;
|
||||
use std::io::{stdout, Read, Write};
|
||||
use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
|
||||
use std::os::unix::net::UnixListener;
|
||||
use std::os::unix::net::UnixStream;
|
||||
use std::os::unix::net::{UnixListener, UnixStream};
|
||||
use std::panic::AssertUnwindSafe;
|
||||
use std::path::PathBuf;
|
||||
use std::rc::Rc;
|
||||
use std::sync::mpsc::{Receiver, RecvError, SendError, Sender};
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::time::Instant;
|
||||
use std::{result, thread};
|
||||
use std::{io, result, thread};
|
||||
|
||||
use anyhow::anyhow;
|
||||
#[cfg(feature = "dbus_api")]
|
||||
@@ -40,8 +38,8 @@ use thiserror::Error;
|
||||
use tracer::trace_scoped;
|
||||
use vm_memory::bitmap::AtomicBitmap;
|
||||
use vm_memory::{ReadVolatile, WriteVolatile};
|
||||
use vm_migration::{protocol::*, Migratable};
|
||||
use vm_migration::{MigratableError, Pausable, Snapshot, Snapshottable, Transportable};
|
||||
use vm_migration::protocol::*;
|
||||
use vm_migration::{Migratable, MigratableError, Pausable, Snapshot, Snapshottable, Transportable};
|
||||
use vmm_sys_util::eventfd::EventFd;
|
||||
use vmm_sys_util::signal::unblock_signal;
|
||||
use vmm_sys_util::sock_ctrl_msg::ScmSocket;
|
||||
|
||||
@@ -12,9 +12,8 @@ use std::ops::{BitAnd, Deref, Not, Sub};
|
||||
use std::os::fd::AsFd;
|
||||
use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
|
||||
use std::path::PathBuf;
|
||||
use std::result;
|
||||
use std::sync::{Arc, Barrier, Mutex};
|
||||
use std::{ffi, thread};
|
||||
use std::{ffi, result, thread};
|
||||
|
||||
use acpi_tables::{aml, Aml};
|
||||
use anyhow::anyhow;
|
||||
@@ -37,14 +36,14 @@ use vm_allocator::{AddressAllocator, SystemAllocator};
|
||||
use vm_device::BusDevice;
|
||||
use vm_memory::bitmap::AtomicBitmap;
|
||||
use vm_memory::guest_memory::FileOffset;
|
||||
use vm_memory::mmap::MmapRegionError;
|
||||
use vm_memory::{
|
||||
mmap::MmapRegionError, Address, Error as MmapError, GuestAddress, GuestAddressSpace,
|
||||
GuestMemory, GuestMemoryAtomic, GuestMemoryError, GuestMemoryRegion, GuestUsize, MmapRegion,
|
||||
ReadVolatile,
|
||||
Address, Error as MmapError, GuestAddress, GuestAddressSpace, GuestMemory, GuestMemoryAtomic,
|
||||
GuestMemoryError, GuestMemoryRegion, GuestUsize, MmapRegion, ReadVolatile,
|
||||
};
|
||||
use vm_migration::protocol::{MemoryRange, MemoryRangeTable};
|
||||
use vm_migration::{
|
||||
protocol::MemoryRange, protocol::MemoryRangeTable, Migratable, MigratableError, Pausable,
|
||||
Snapshot, SnapshotData, Snapshottable, Transportable,
|
||||
Migratable, MigratableError, Pausable, Snapshot, SnapshotData, Snapshottable, Transportable,
|
||||
};
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
@@ -55,8 +54,7 @@ use crate::coredump::{
|
||||
CoredumpMemoryRegion, CoredumpMemoryRegions, DumpState, GuestDebuggableError,
|
||||
};
|
||||
use crate::migration::url_to_path;
|
||||
use crate::MEMORY_MANAGER_SNAPSHOT_ID;
|
||||
use crate::{GuestMemoryMmap, GuestRegionMmap};
|
||||
use crate::{GuestMemoryMmap, GuestRegionMmap, MEMORY_MANAGER_SNAPSHOT_ID};
|
||||
|
||||
pub const MEMORY_MANAGER_ACPI_SIZE: usize = 0x18;
|
||||
|
||||
|
||||
@@ -9,9 +9,10 @@ use std::path::PathBuf;
|
||||
use anyhow::anyhow;
|
||||
use vm_migration::{MigratableError, Snapshot};
|
||||
|
||||
use crate::config::VmConfig;
|
||||
#[cfg(all(target_arch = "x86_64", feature = "guest_debug"))]
|
||||
use crate::coredump::GuestDebuggableError;
|
||||
use crate::{config::VmConfig, vm::VmSnapshot};
|
||||
use crate::vm::VmSnapshot;
|
||||
|
||||
pub const SNAPSHOT_STATE_FILE: &str = "state.json";
|
||||
pub const SNAPSHOT_CONFIG_FILE: &str = "config.json";
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
use hypervisor::HypervisorType;
|
||||
use seccompiler::SeccompCmpOp::Eq;
|
||||
use seccompiler::{
|
||||
BackendError, BpfProgram, Error, SeccompAction, SeccompCmpArgLen as ArgLen, SeccompCmpOp::Eq,
|
||||
BackendError, BpfProgram, Error, SeccompAction, SeccompCmpArgLen as ArgLen,
|
||||
SeccompCondition as Cond, SeccompFilter, SeccompRule,
|
||||
};
|
||||
|
||||
|
||||
@@ -6,8 +6,7 @@ use std::collections::BTreeSet;
|
||||
use std::fs::{read_dir, File};
|
||||
use std::io::{self, ErrorKind, Read, Write};
|
||||
use std::iter::once;
|
||||
use std::mem::size_of;
|
||||
use std::mem::MaybeUninit;
|
||||
use std::mem::{size_of, MaybeUninit};
|
||||
use std::os::unix::prelude::*;
|
||||
use std::process::exit;
|
||||
use std::ptr::null_mut;
|
||||
|
||||
@@ -11,9 +11,7 @@
|
||||
// SPDX-License-Identifier: Apache-2.0 AND BSD-3-Clause
|
||||
//
|
||||
|
||||
use std::cmp;
|
||||
use std::collections::BTreeMap;
|
||||
use std::collections::HashMap;
|
||||
use std::collections::{BTreeMap, HashMap};
|
||||
use std::fs::{File, OpenOptions};
|
||||
use std::io::{self, Seek, SeekFrom, Write};
|
||||
#[cfg(all(target_arch = "x86_64", feature = "guest_debug"))]
|
||||
@@ -23,18 +21,16 @@ use std::ops::Deref;
|
||||
use std::os::unix::net::UnixStream;
|
||||
use std::sync::{Arc, Mutex, RwLock};
|
||||
use std::time::Instant;
|
||||
use std::{result, str, thread};
|
||||
use std::{cmp, result, str, thread};
|
||||
|
||||
use anyhow::anyhow;
|
||||
use arch::get_host_cpu_phys_bits;
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
use arch::layout::{KVM_IDENTITY_MAP_START, KVM_TSS_START};
|
||||
#[cfg(feature = "tdx")]
|
||||
use arch::x86_64::tdx::TdvfSection;
|
||||
use arch::EntryPoint;
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use arch::PciSpaceInfo;
|
||||
use arch::{NumaNode, NumaNodes};
|
||||
use arch::{get_host_cpu_phys_bits, EntryPoint, NumaNode, NumaNodes};
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
use devices::interrupt_controller;
|
||||
use devices::AcpiNotificationFlags;
|
||||
@@ -64,25 +60,23 @@ use vm_memory::{Address, ByteValued, GuestMemoryRegion, ReadVolatile};
|
||||
use vm_memory::{
|
||||
Bytes, GuestAddress, GuestAddressSpace, GuestMemory, GuestMemoryAtomic, WriteVolatile,
|
||||
};
|
||||
use vm_migration::protocol::{Request, Response};
|
||||
use vm_migration::protocol::{MemoryRangeTable, Request, Response};
|
||||
use vm_migration::{
|
||||
protocol::MemoryRangeTable, snapshot_from_id, Migratable, MigratableError, Pausable, Snapshot,
|
||||
Snapshottable, Transportable,
|
||||
snapshot_from_id, Migratable, MigratableError, Pausable, Snapshot, Snapshottable, Transportable,
|
||||
};
|
||||
use vmm_sys_util::eventfd::EventFd;
|
||||
use vmm_sys_util::sock_ctrl_msg::ScmSocket;
|
||||
|
||||
use crate::config::{
|
||||
add_to_config, DeviceConfig, DiskConfig, FsConfig, HotplugMethod, NetConfig, PmemConfig,
|
||||
UserDeviceConfig, ValidationError, VdpaConfig, VmConfig, VsockConfig,
|
||||
add_to_config, DeviceConfig, DiskConfig, FsConfig, HotplugMethod, NetConfig, NumaConfig,
|
||||
PayloadConfig, PmemConfig, UserDeviceConfig, ValidationError, VdpaConfig, VmConfig,
|
||||
VsockConfig,
|
||||
};
|
||||
use crate::config::{NumaConfig, PayloadConfig};
|
||||
use crate::console_devices::{ConsoleDeviceError, ConsoleInfo};
|
||||
#[cfg(all(target_arch = "x86_64", feature = "guest_debug"))]
|
||||
use crate::coredump::{
|
||||
CpuElf64Writable, DumpState, Elf64Writable, GuestDebuggable, GuestDebuggableError, NoteDescType,
|
||||
};
|
||||
use crate::cpu;
|
||||
use crate::device_manager::{DeviceManager, DeviceManagerError};
|
||||
use crate::device_tree::DeviceTree;
|
||||
#[cfg(feature = "guest_debug")]
|
||||
@@ -98,9 +92,9 @@ use crate::migration::get_vm_snapshot;
|
||||
#[cfg(all(target_arch = "x86_64", feature = "guest_debug"))]
|
||||
use crate::migration::url_to_file;
|
||||
use crate::migration::{url_to_path, SNAPSHOT_CONFIG_FILE, SNAPSHOT_STATE_FILE};
|
||||
use crate::GuestMemoryMmap;
|
||||
use crate::{
|
||||
PciDeviceInfo, CPU_MANAGER_SNAPSHOT_ID, DEVICE_MANAGER_SNAPSHOT_ID, MEMORY_MANAGER_SNAPSHOT_ID,
|
||||
cpu, GuestMemoryMmap, PciDeviceInfo, CPU_MANAGER_SNAPSHOT_ID, DEVICE_MANAGER_SNAPSHOT_ID,
|
||||
MEMORY_MANAGER_SNAPSHOT_ID,
|
||||
};
|
||||
|
||||
/// Errors associated with VM management
|
||||
|
||||
@@ -2,13 +2,16 @@
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
use std::{fs, net::Ipv4Addr, path::PathBuf, result};
|
||||
use std::net::Ipv4Addr;
|
||||
use std::path::PathBuf;
|
||||
use std::{fs, result};
|
||||
|
||||
use net_util::MacAddr;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use virtio_devices::RateLimiterConfig;
|
||||
|
||||
use crate::{landlock::LandlockError, Landlock};
|
||||
use crate::landlock::LandlockError;
|
||||
use crate::Landlock;
|
||||
|
||||
pub type LandlockResult<T> = result::Result<T, LandlockError>;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user