• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2020 The Chromium OS Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 /// An enumeration of different hypervisor capabilities.
6 #[derive(Clone, Copy, Debug, Eq, PartialEq)]
7 pub enum HypervisorCap {
8     ArmPmuV3,
9     ImmediateExit,
10     S390UserSigp,
11     TscDeadlineTimer,
12     UserMemory,
13     #[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
14     Xcrs,
15 }
16 
17 /// A capability the `Vm` can possibly expose.
18 #[derive(Clone, Copy, Debug, Eq, PartialEq)]
19 pub enum VmCap {
20     /// Track dirty pages
21     DirtyLog,
22     /// Paravirtualized clock device
23     PvClock,
24     /// PV clock can be notified when guest is being paused
25     PvClockSuspend,
26     /// VM can be run in protected mode, where the host does not have access to its memory.
27     Protected,
28 }
29