tree: a85fc95585f2f280bb8ce8f6dc2fae6b5c2a3e93 [path history] [tgz]
  1. bin/
  2. buildtools/
  3. bundles/
  4. ffx/
  5. lib/
  6. packages/
  7. scripts/
  8. tests/
  9. third_party/
  10. BUILD.gn
  11. OWNERS
  12. README.md
src/virtualization/README.md

Fuchsia Virtualization

This directory contains the userspace portions of the Fuchsia Virtualization stack. For a high level overview of Fuchsia Virtualization, see Virtualization Overview.

If you just want to start using Virtualization, see Getting Started.

Monitor Guest exit statistics

kstats -v can print the number of Guest exits per second and the reason. For example, the output on ARM64 appears as follows:

cpu   vm_entry vm_exit inst_abt data_abt wfx_inst sys_inst smc_inst ints
  0      43        43        0      6      27        1        0      9
  1     226       225        0    111       3       17        0     94
  2     109       109        0     60       8        7        0     35
  3      58        58        0     21      12        2        0     23

The fields in the output are as follows:

  • inst_abt: The amount of instruction abort exit.
  • data_abt: The amount of data abort exit.
  • wfx_inst: The amount of instruction wfe/wfi exit.
  • sys_inst: The amount of systen register access exit.
  • smc_inst: The amount of instruction smc exit.
  • ints : The amount of interrupt exit.

For x64, the output is as follows:

 cpu    vm_entry vm_exit ints ints_win ept ctrl_reg msr(rd wr) inst(io hlt cpuid ple vmcall xsetbv)
  0       40       40     10      0     0      0        10 10        5  5    0    0    0      0

With the following fields:

  • ints : The amount of interrupt exit.
  • ints_win : The amount of interrupt window exit.
  • ept : The amount of EPT violation exit.
  • ctrl_reg : The amount of control register(CRx) access exit.
  • msr : The amount of MSR register access exit (rd/wr is read/write).
  • inst : the amount of some kinds of instruction exit.