1.\" Copyright (c) 2013 Peter Grehan 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ 26.\" 27.Dd December 8, 2020 28.Dt BHYVE 8 29.Os 30.Sh NAME 31.Nm bhyve 32.Nd "run a guest operating system inside a virtual machine" 33.Sh SYNOPSIS 34.Nm 35.Op Fl AabCDeHhPSuWwxY 36.Oo 37.Sm off 38.Fl c\~ 39.Oo 40.Op Cm cpus= 41.Ar numcpus 42.Oc 43.Op Cm ,sockets= Ar n 44.Op Cm ,cores= Ar n 45.Op Cm ,threads= Ar n 46.Oc 47.Sm on 48.Op Fl G Ar port 49.Op Fl g Ar gdbport 50.Oo Fl l 51.Sm off 52.Cm help | Ar lpcdev Op Cm \&, Ar conf 53.Sm on 54.Oc 55.Oo Fl m 56.Sm off 57.Ar memsize 58.Oo 59.Cm K No | Cm k No | Cm M No | Cm m No | Cm G No | Cm g No | Cm T No | Cm t 60.Oc 61.Sm on 62.Oc 63.Op Fl p Ar vcpu Ns Cm \&: Ns Ar hostcpu 64.Op Fl r Ar file 65.Oo Fl s 66.Sm off 67.Cm help | Ar slot Cm \&, Ar emulation Op Cm \&, Ar conf 68.Sm on 69.Oc 70.Op Fl U Ar uuid 71.Ar vmname 72.Sh DESCRIPTION 73.Nm 74is a hypervisor that runs guest operating systems inside a 75virtual machine. 76.Pp 77Parameters such as the number of virtual CPUs, amount of guest memory, and 78I/O connectivity can be specified with command-line parameters. 79.Pp 80If not using a boot ROM, the guest operating system must be loaded with 81.Xr bhyveload 8 82or a similar boot loader before running 83.Nm , 84otherwise, it is enough to run 85.Nm 86with a boot ROM of choice. 87.Pp 88.Nm 89runs until the guest operating system reboots or an unhandled hypervisor 90exit is detected. 91.Sh OPTIONS 92.Bl -tag -width 10n 93.It Fl a 94The guest's local APIC is configured in xAPIC mode. 95The xAPIC mode is the default setting so this option is redundant. 96It will be deprecated in a future version. 97.It Fl A 98Generate ACPI tables. 99Required for 100.Fx Ns /amd64 101guests. 102.It Fl b 103Enable a low-level console device supported by 104.Fx 105kernels compiled with 106.Cd "device bvmconsole" . 107This option is deprecated and will be removed in 108.Fx 13.0 . 109.It Fl c Op Ar setting ... 110Number of guest virtual CPUs 111and/or the CPU topology. 112The default value for each of 113.Ar numcpus , 114.Ar sockets , 115.Ar cores , 116and 117.Ar threads 118is 1. 119The current maximum number of guest virtual CPUs is 16. 120If 121.Ar numcpus 122is not specified then it will be calculated from the other arguments. 123The topology must be consistent in that the 124.Ar numcpus 125must equal the product of 126.Ar sockets , 127.Ar cores , 128and 129.Ar threads . 130If a 131.Ar setting 132is specified more than once the last one has precedence. 133.It Fl C 134Include guest memory in core file. 135.It Fl D 136Destroy the VM on guest initiated power-off. 137.It Fl e 138Force 139.Nm 140to exit when a guest issues an access to an I/O port that is not emulated. 141This is intended for debug purposes. 142.It Fl g Ar gdbport 143For 144.Fx 145kernels compiled with 146.Cd "device bvmdebug" , 147allow a remote kernel kgdb to be relayed to the guest kernel gdb stub 148via a local IPv4 address and this port. 149This option is deprecated and will be removed in 150.Fx 13.0 . 151.It Fl G Ar port 152Start a debug server that uses the GDB protocol to export guest state to a 153debugger. 154An IPv4 TCP socket will be bound to the supplied 155.Ar port 156to listen for debugger connections. 157Only a single debugger may be attached to the debug server at a time. 158If 159.Ar port 160begins with 161.Sq w , 162.Nm 163will pause execution at the first instruction waiting for a debugger to attach. 164.It Fl h 165Print help message and exit. 166.It Fl H 167Yield the virtual CPU thread when a HLT instruction is detected. 168If this option is not specified, virtual CPUs will use 100% of a host CPU. 169.It Fl l Op Ar help|lpcdev Ns Op , Ns Ar conf 170Allow devices behind the LPC PCI-ISA bridge to be configured. 171The only supported devices are the TTY-class devices 172.Ar com1 173and 174.Ar com2 , 175the boot ROM device 176.Ar bootrom , 177and the debug/test device 178.Ar pc-testdev . 179.Pp 180.Ar help 181print a list of supported LPC devices. 182.It Fl m Ar memsize Ns Op Ar K|k|M|m|G|g|T|t 183Guest physical memory size in bytes. 184This must be the same size that was given to 185.Xr bhyveload 8 . 186.Pp 187The size argument may be suffixed with one of K, M, G or T (either upper 188or lower case) to indicate a multiple of kilobytes, megabytes, gigabytes, 189or terabytes. 190If no suffix is given, the value is assumed to be in megabytes. 191.Pp 192.Ar memsize 193defaults to 256M. 194.It Fl p Ar vcpu:hostcpu 195Pin guest's virtual CPU 196.Em vcpu 197to 198.Em hostcpu . 199.It Fl P 200Force the guest virtual CPU to exit when a PAUSE instruction is detected. 201.It Fl r Ar file 202Resume a guest from a snapshot. 203The guest memory contents are restored from 204.Ar file , 205and the guest device and vCPU state are restored from the file 206.Dq Ar file Ns .kern . 207.Pp 208Note that the current snapshot file format requires that the configuration of 209devices in the new VM match the VM from which the snapshot was taken by specifying the 210same 211.Op Fl s 212and 213.Op Fl l 214options. 215The count of vCPUs and memory configuration are read from the snapshot. 216.It Fl s Op Ar help|slot,emulation Ns Op , Ns Ar conf 217Configure a virtual PCI slot and function. 218.Pp 219.Nm 220provides PCI bus emulation and virtual devices that can be attached to 221slots on the bus. 222There are 32 available slots, with the option of providing up to 8 functions 223per slot. 224.Bl -tag -width 10n 225.It Ar help 226print a list of supported PCI devices. 227.It Ar slot 228.Ar pcislot[:function] 229.Ar bus:pcislot:function 230.Pp 231The 232.Ar pcislot 233value is 0 to 31. 234The optional 235.Ar function 236value is 0 to 7. 237The optional 238.Ar bus 239value is 0 to 255. 240If not specified, the 241.Ar function 242value defaults to 0. 243If not specified, the 244.Ar bus 245value defaults to 0. 246.It Ar emulation 247.Bl -tag -width 10n 248.It Li hostbridge | Li amd_hostbridge 249.Pp 250Provide a simple host bridge. 251This is usually configured at slot 0, and is required by most guest 252operating systems. 253The 254.Li amd_hostbridge 255emulation is identical but uses a PCI vendor ID of 256.Li AMD . 257.It Li passthru 258PCI pass-through device. 259.It Li virtio-net 260Virtio network interface. 261.It Li virtio-blk 262Virtio block storage interface. 263.It Li virtio-scsi 264Virtio SCSI interface. 265.It Li virtio-9p 266Virtio 9p (VirtFS) interface. 267.It Li virtio-rnd 268Virtio RNG interface. 269.It Li virtio-console 270Virtio console interface, which exposes multiple ports 271to the guest in the form of simple char devices for simple IO 272between the guest and host userspaces. 273.It Li ahci 274AHCI controller attached to arbitrary devices. 275.It Li ahci-cd 276AHCI controller attached to an ATAPI CD/DVD. 277.It Li ahci-hd 278AHCI controller attached to a SATA hard-drive. 279.It Li e1000 280Intel e82545 network interface. 281.It Li uart 282PCI 16550 serial device. 283.It Li lpc 284LPC PCI-ISA bridge with COM1 and COM2 16550 serial ports, a boot ROM, and, 285optionally, the debug/test device. 286The LPC bridge emulation can only be configured on bus 0. 287.It Li fbuf 288Raw framebuffer device attached to VNC server. 289.It Li xhci 290eXtensible Host Controller Interface (xHCI) USB controller. 291.It Li nvme 292NVM Express (NVMe) controller. 293.It Li hda 294High Definition Audio Controller. 295.El 296.It Op Ar conf 297This optional parameter describes the backend for device emulations. 298If 299.Ar conf 300is not specified, the device emulation has no backend and can be 301considered unconnected. 302.Pp 303Network backends: 304.Bl -tag -width 10n 305.It Ar tapN Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc 306.It Ar vmnetN Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc 307.It Ar netgraph,path=ADDRESS,peerhook=HOOK Ns Oo , Ns Ar socket=NAME Oc Ns Oo , Ns Ar hook=HOOK Oc Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc 308.Pp 309If 310.Ar mac 311is not specified, the MAC address is derived from a fixed OUI and the 312remaining bytes from an MD5 hash of the slot and function numbers and 313the device name. 314.Pp 315The MAC address is an ASCII string in 316.Xr ethers 5 317format. 318.Pp 319With virtio-net devices, the 320.Ar mtu 321parameter can be specified to inform the guest about the largest MTU 322that should be allowed, expressed in bytes. 323.Pp 324With netgraph backend, the 325.Ar path 326and 327.Ar peerhook 328parameters must be specified to set the destination node and corresponding hook. 329The optional parameters 330.Ar socket 331and 332.Ar hook 333may be used to set the 334.Xr ng_socket 4 335node name and source hook. 336The 337.Ar ADDRESS , 338.Ar HOOK 339and 340.Ar NAME 341must comply with 342.Xr netgraph 4 343addressing rules. 344.El 345.Pp 346Block storage devices: 347.Bl -tag -width 10n 348.It Pa /filename Ns Oo , Ns Ar block-device-options Oc 349.It Pa /dev/xxx Ns Oo , Ns Ar block-device-options Oc 350.El 351.Pp 352The 353.Ar block-device-options 354are: 355.Bl -tag -width 8n 356.It Li nocache 357Open the file with 358.Dv O_DIRECT . 359.It Li direct 360Open the file using 361.Dv O_SYNC . 362.It Li ro 363Force the file to be opened read-only. 364.It Li sectorsize= Ns Ar logical Ns Oo / Ns Ar physical Oc 365Specify the logical and physical sector sizes of the emulated disk. 366The physical sector size is optional and is equal to the logical sector size 367if not explicitly specified. 368.El 369.Pp 370SCSI devices: 371.Bl -tag -width 10n 372.It Pa /dev/cam/ctl Ns Oo Ar pp . Ns Ar vp Oc Ns Oo , Ns Ar scsi-device-options Oc 373.El 374.Pp 375The 376.Ar scsi-device-options 377are: 378.Bl -tag -width 10n 379.It Li iid= Ns Ar IID 380Initiator ID to use when sending requests to specified CTL port. 381The default value is 0. 382.El 383.Pp 3849P devices: 385.Bl -tag -width 10n 386.It Pa sharename=/path/to/share[,9p-device-options] 387.El 388.Pp 389The 390.Ar 9p-device-options 391are: 392.Bl -tag -width 10n 393.It Li ro 394Expose the share in read-only mode. 395.El 396.Pp 397TTY devices: 398.Bl -tag -width 10n 399.It Li stdio 400Connect the serial port to the standard input and output of 401the 402.Nm 403process. 404.It Pa /dev/xxx 405Use the host TTY device for serial port I/O. 406.El 407.Pp 408Boot ROM device: 409.Bl -tag -width 10n 410.It Pa romfile 411Map 412.Ar romfile 413in the guest address space reserved for boot firmware. 414.El 415.Pp 416Pass-through devices: 417.Bl -tag -width 10n 418.It Ns Ar slot Ns / Ns Ar bus Ns / Ns Ar function 419Connect to a PCI device on the host at the selector described by 420.Ar slot , 421.Ar bus , 422and 423.Ar function 424numbers. 425.El 426.Pp 427Guest memory must be wired using the 428.Fl S 429option when a pass-through device is configured. 430.Pp 431The host device must have been reserved at boot-time using the 432.Va pptdevs 433loader variable as described in 434.Xr vmm 4 . 435.Pp 436Virtio console devices: 437.Bl -tag -width 10n 438.It Li port1= Ns Pa /path/to/port1.sock Ns ,anotherport= Ns Pa ... 439A maximum of 16 ports per device can be created. 440Every port is named and corresponds to a Unix domain socket created by 441.Nm . 442.Nm 443accepts at most one connection per port at a time. 444.Pp 445Limitations: 446.Bl -bullet -offset 2n 447.It 448Due to lack of destructors in 449.Nm , 450sockets on the filesystem must be cleaned up manually after 451.Nm 452exits. 453.It 454There is no way to use the "console port" feature, nor the console port 455resize at present. 456.It 457Emergency write is advertised, but no-op at present. 458.El 459.El 460.Pp 461Framebuffer devices: 462.Bl -tag -width 10n 463.It Xo 464.Oo rfb= Ns Oo Ar IP\&: Oc Ns Ar port Oc Ns Oo ,w= Ns Ar width Oc Ns Oo ,h= Ns 465.Ar height Oc Ns Oo ,vga= Ns Ar vgaconf Oc Ns Oo Ns ,wait Oc Ns Oo ,password= Ns 466.Ar password Oc 467.Xc 468.Bl -tag -width 8n 469.It Ar IPv4:port No or Ar [IPv6%zone]:port 470An 471.Ar IP 472address and a 473.Ar port 474VNC should listen on. 475The default is to listen on localhost IPv4 address and default VNC port 5900. 476An IPv6 address must be enclosed in square brackets and may contain an 477optional zone identifier. 478.It Ar width No and Ar height 479A display resolution, width and height, respectively. 480If not specified, a default resolution of 1024x768 pixels will be used. 481Minimal supported resolution is 640x480 pixels, 482and maximum is 1920x1200 pixels. 483.It Ar vgaconf 484Possible values for this option are 485.Dq io 486(default), 487.Dq on 488, and 489.Dq off . 490PCI graphics cards have a dual personality in that they are 491standard PCI devices with BAR addressing, but may also 492implicitly decode legacy VGA I/O space 493.Pq Ad 0x3c0-3df 494and memory space 495.Pq 64KB at Ad 0xA0000 . 496The default 497.Dq io 498option should be used for guests that attempt to issue BIOS calls which result 499in I/O port queries, and fail to boot if I/O decode is disabled. 500.Pp 501The 502.Dq on 503option should be used along with the CSM BIOS capability in UEFI 504to boot traditional BIOS guests that require the legacy VGA I/O and 505memory regions to be available. 506.Pp 507The 508.Dq off 509option should be used for the UEFI guests that assume that 510VGA adapter is present if they detect the I/O ports. 511An example of such a guest is 512.Ox 513in UEFI mode. 514.Pp 515Please refer to the 516.Nm 517.Fx 518wiki page 519.Pq Lk https://wiki.freebsd.org/bhyve 520for configuration notes of particular guests. 521.It wait 522Instruct 523.Nm 524to only boot upon the initiation of a VNC connection, simplifying the 525installation of operating systems that require immediate keyboard input. 526This can be removed for post-installation use. 527.It password 528This type of authentication is known to be cryptographically weak and is not 529intended for use on untrusted networks. 530Many implementations will want to use stronger security, such as running 531the session over an encrypted channel provided by IPsec or SSH. 532.El 533.El 534.Pp 535xHCI USB devices: 536.Bl -tag -width 10n 537.It Li tablet 538A USB tablet device which provides precise cursor synchronization 539when using VNC. 540.El 541.Pp 542NVMe devices: 543.Bl -tag -width 10n 544.It Li devpath 545Accepted device paths are: 546.Ar /dev/blockdev 547or 548.Ar /path/to/image 549or 550.Ar ram=size_in_MiB . 551.It Li maxq 552Max number of queues. 553.It Li qsz 554Max elements in each queue. 555.It Li ioslots 556Max number of concurrent I/O requests. 557.It Li sectsz 558Sector size (defaults to blockif sector size). 559.It Li ser 560Serial number with maximum 20 characters. 561.El 562.Pp 563AHCI devices: 564.Bl -tag -width 10n 565.It Li nmrr 566Nominal Media Rotation Rate, known as RPM. value 1 will indicate device as Solid State Disk. default value is 0, not report. 567.It Li ser 568Serial Number with maximum 20 characters. 569.It Li rev 570Revision Number with maximum 8 characters. 571.It Li model 572Model Number with maximum 40 characters. 573.El 574.Pp 575HD Audio devices: 576.Bl -tag -width 10n 577.It Li play 578Playback device, typically 579.Ar /dev/dsp0 . 580.It Li rec 581Recording device, typically 582.Ar /dev/dsp0 . 583.El 584.El 585.It Fl S 586Wire guest memory. 587.It Fl u 588RTC keeps UTC time. 589.It Fl U Ar uuid 590Set the universally unique identifier 591.Pq UUID 592in the guest's System Management BIOS System Information structure. 593By default a UUID is generated from the host's hostname and 594.Ar vmname . 595.It Fl w 596Ignore accesses to unimplemented Model Specific Registers (MSRs). 597This is intended for debug purposes. 598.It Fl W 599Force virtio PCI device emulations to use MSI interrupts instead of MSI-X 600interrupts. 601.It Fl x 602The guest's local APIC is configured in x2APIC mode. 603.It Fl Y 604Disable MPtable generation. 605.It Ar vmname 606Alphanumeric name of the guest. 607This should be the same as that created by 608.Xr bhyveload 8 . 609.El 610.Sh DEBUG SERVER 611The current debug server provides limited support for debuggers. 612.Ss Registers 613Each virtual CPU is exposed to the debugger as a thread. 614.Pp 615General purpose registers can be queried for each virtual CPU, but other 616registers such as floating-point and system registers cannot be queried. 617.Ss Memory 618Memory (including memory mapped I/O regions) can be read and written by the debugger. 619Memory operations use virtual addresses that are resolved to physical addresses 620via the current virtual CPU's active address translation. 621.Ss Control 622The running guest can be interrupted by the debugger at any time 623.Pq for example, by pressing Ctrl-C in the debugger . 624.Pp 625Single stepping is only supported on Intel CPUs supporting the MTRAP VM exit. 626.Pp 627Breakpoints are supported on Intel CPUs that support single stepping. 628Note that continuing from a breakpoint while interrupts are enabled in the 629guest may not work as expected due to timer interrupts firing while single 630stepping over the breakpoint. 631.Sh SIGNAL HANDLING 632.Nm 633deals with the following signals: 634.Pp 635.Bl -tag -width indent -compact 636.It SIGTERM 637Trigger ACPI poweroff for a VM 638.El 639.Sh EXIT STATUS 640Exit status indicates how the VM was terminated: 641.Pp 642.Bl -tag -width indent -compact 643.It 0 644rebooted 645.It 1 646powered off 647.It 2 648halted 649.It 3 650triple fault 651.It 4 652exited due to an error 653.El 654.Sh EXAMPLES 655If not using a boot ROM, the guest operating system must have been loaded with 656.Xr bhyveload 8 657or a similar boot loader before 658.Xr bhyve 4 659can be run. 660Otherwise, the boot loader is not needed. 661.Pp 662To run a virtual machine with 1GB of memory, two virtual CPUs, a virtio 663block device backed by the 664.Pa /my/image 665filesystem image, and a serial port for the console: 666.Bd -literal -offset indent 667bhyve -c 2 -s 0,hostbridge -s 1,lpc -s 2,virtio-blk,/my/image \\ 668 -l com1,stdio -A -H -P -m 1G vm1 669.Ed 670.Pp 671Run a 24GB single-CPU virtual machine with three network ports, one of which 672has a MAC address specified: 673.Bd -literal -offset indent 674bhyve -s 0,hostbridge -s 1,lpc -s 2:0,virtio-net,tap0 \\ 675 -s 2:1,virtio-net,tap1 \\ 676 -s 2:2,virtio-net,tap2,mac=00:be:fa:76:45:00 \\ 677 -s 3,virtio-blk,/my/image -l com1,stdio \\ 678 -A -H -P -m 24G bigvm 679.Ed 680.Pp 681Run an 8GB quad-CPU virtual machine with 8 AHCI SATA disks, an AHCI ATAPI 682CD-ROM, a single virtio network port, an AMD hostbridge, and the console 683port connected to an 684.Xr nmdm 4 685null-modem device. 686.Bd -literal -offset indent 687bhyve -c 4 \\ 688 -s 0,amd_hostbridge -s 1,lpc \\ 689 -s 1:0,ahci,hd:/images/disk.1,hd:/images/disk.2,\\ 690hd:/images/disk.3,hd:/images/disk.4,\\ 691hd:/images/disk.5,hd:/images/disk.6,\\ 692hd:/images/disk.7,hd:/images/disk.8,\\ 693cd:/images/install.iso \\ 694 -s 3,virtio-net,tap0 \\ 695 -l com1,/dev/nmdm0A \\ 696 -A -H -P -m 8G 697.Ed 698.Pp 699Run a UEFI virtual machine with a display resolution of 800 by 600 pixels 700that can be accessed via VNC at: 0.0.0.0:5900. 701.Bd -literal -offset indent 702bhyve -c 2 -m 4G -w -H \\ 703 -s 0,hostbridge \\ 704 -s 3,ahci-cd,/path/to/uefi-OS-install.iso \\ 705 -s 4,ahci-hd,disk.img \\ 706 -s 5,virtio-net,tap0 \\ 707 -s 29,fbuf,tcp=0.0.0.0:5900,w=800,h=600,wait \\ 708 -s 30,xhci,tablet \\ 709 -s 31,lpc -l com1,stdio \\ 710 -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \\ 711 uefivm 712.Ed 713.Pp 714Run a UEFI virtual machine with a VNC display that is bound to all IPv6 715addresses on port 5900. 716.Bd -literal -offset indent 717bhyve -c 2 -m 4G -w -H \\ 718 -s 0,hostbridge \\ 719 -s 4,ahci-hd,disk.img \\ 720 -s 5,virtio-net,tap0 \\ 721 -s 29,fbuf,tcp=[::]:5900,w=800,h=600 \\ 722 -s 30,xhci,tablet \\ 723 -s 31,lpc -l com1,stdio \\ 724 -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \\ 725 uefivm 726.Ed 727.Sh SEE ALSO 728.Xr bhyve 4 , 729.Xr netgraph 4 , 730.Xr ng_socket 4 , 731.Xr nmdm 4 , 732.Xr vmm 4 , 733.Xr ethers 5 , 734.Xr bhyvectl 8 , 735.Xr bhyveload 8 736.Pp 737.Rs 738.%A Intel 739.%B 64 and IA-32 Architectures Software Developer’s Manual 740.%V Volume 3 741.Re 742.Sh HISTORY 743.Nm 744first appeared in 745.Fx 10.0 . 746.Sh AUTHORS 747.An Neel Natu Aq Mt neel@freebsd.org 748.An Peter Grehan Aq Mt grehan@freebsd.org 749