xref: /freebsd/usr.sbin/bhyve/bhyve.8 (revision 0a1016f9e8a84edc8eb21e4f776b18b19fdd26ce)
1b13e60daSPeter Grehan.\" Copyright (c) 2013 Peter Grehan
2b13e60daSPeter Grehan.\" All rights reserved.
3b13e60daSPeter Grehan.\"
4b13e60daSPeter Grehan.\" Redistribution and use in source and binary forms, with or without
5b13e60daSPeter Grehan.\" modification, are permitted provided that the following conditions
6b13e60daSPeter Grehan.\" are met:
7b13e60daSPeter Grehan.\" 1. Redistributions of source code must retain the above copyright
8b13e60daSPeter Grehan.\"    notice, this list of conditions and the following disclaimer.
9b13e60daSPeter Grehan.\" 2. Redistributions in binary form must reproduce the above copyright
10b13e60daSPeter Grehan.\"    notice, this list of conditions and the following disclaimer in the
11b13e60daSPeter Grehan.\"    documentation and/or other materials provided with the distribution.
12b13e60daSPeter Grehan.\"
13b13e60daSPeter Grehan.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
14b13e60daSPeter Grehan.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15b13e60daSPeter Grehan.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16b13e60daSPeter Grehan.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
17b13e60daSPeter Grehan.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18b13e60daSPeter Grehan.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19b13e60daSPeter Grehan.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20b13e60daSPeter Grehan.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21b13e60daSPeter Grehan.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22b13e60daSPeter Grehan.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23b13e60daSPeter Grehan.\" SUCH DAMAGE.
24b13e60daSPeter Grehan.\"
25b13e60daSPeter Grehan.\" $FreeBSD$
26b13e60daSPeter Grehan.\"
27*0a1016f9SPawel Biernacki.Dd Jun 25, 2020
28b13e60daSPeter Grehan.Dt BHYVE 8
29b13e60daSPeter Grehan.Os
30b13e60daSPeter Grehan.Sh NAME
31b13e60daSPeter Grehan.Nm bhyve
32b13e60daSPeter Grehan.Nd "run a guest operating system inside a virtual machine"
33b13e60daSPeter Grehan.Sh SYNOPSIS
34b13e60daSPeter Grehan.Nm
35*0a1016f9SPawel Biernacki.Op Fl AabCDeHhPSuWwxY
3601d822d3SRodney W. Grimes.Oo
3777d208a3SMateusz Piotrowski.Sm off
3877d208a3SMateusz Piotrowski.Fl c\~
3901d822d3SRodney W. Grimes.Oo
4077d208a3SMateusz Piotrowski.Op Cm cpus=
4177d208a3SMateusz Piotrowski.Ar numcpus
4201d822d3SRodney W. Grimes.Oc
4377d208a3SMateusz Piotrowski.Op Cm ,sockets= Ar n
4477d208a3SMateusz Piotrowski.Op Cm ,cores= Ar n
4577d208a3SMateusz Piotrowski.Op Cm ,threads= Ar n
4677d208a3SMateusz Piotrowski.Oc
4777d208a3SMateusz Piotrowski.Sm on
48cd377eb3SJohn Baldwin.Op Fl G Ar port
4977d208a3SMateusz Piotrowski.Op Fl g Ar gdbport
5077d208a3SMateusz Piotrowski.Oo Fl l
5177d208a3SMateusz Piotrowski.Sm off
5277d208a3SMateusz Piotrowski.Cm help | Ar lpcdev Op Cm \&, Ar conf
5377d208a3SMateusz Piotrowski.Sm on
5477d208a3SMateusz Piotrowski.Oc
5577d208a3SMateusz Piotrowski.Oo Fl m
5677d208a3SMateusz Piotrowski.Sm off
5777d208a3SMateusz Piotrowski.Ar memsize
5877d208a3SMateusz Piotrowski.Oo
5977d208a3SMateusz Piotrowski.Cm K No | Cm k No | Cm M No | Cm m No | Cm G No | Cm g No | Cm T No | Cm t
6077d208a3SMateusz Piotrowski.Oc
6177d208a3SMateusz Piotrowski.Sm on
6277d208a3SMateusz Piotrowski.Oc
6377d208a3SMateusz Piotrowski.Op Fl p Ar vcpu Ns Cm \&: Ns Ar hostcpu
64483d953aSJohn Baldwin.Op Fl r Ar file
6577d208a3SMateusz Piotrowski.Oo Fl s
6677d208a3SMateusz Piotrowski.Sm off
6777d208a3SMateusz Piotrowski.Cm help | Ar slot Cm \&, Ar emulation Op Cm \&, Ar conf
6877d208a3SMateusz Piotrowski.Sm on
6977d208a3SMateusz Piotrowski.Oc
705749449dSJohn Baldwin.Op Fl U Ar uuid
71b13e60daSPeter Grehan.Ar vmname
72b13e60daSPeter Grehan.Sh DESCRIPTION
73b13e60daSPeter Grehan.Nm
747fca1ad5SGlen Barberis a hypervisor that runs guest operating systems inside a
75b13e60daSPeter Grehanvirtual machine.
76b13e60daSPeter Grehan.Pp
77b13e60daSPeter GrehanParameters such as the number of virtual CPUs, amount of guest memory, and
78b13e60daSPeter GrehanI/O connectivity can be specified with command-line parameters.
79b13e60daSPeter Grehan.Pp
805c3ec676SGleb SmirnoffIf not using a boot ROM, the guest operating system must be loaded with
8184fe889cSChristian Brueffer.Xr bhyveload 8
82b13e60daSPeter Grehanor a similar boot loader before running
835c3ec676SGleb Smirnoff.Nm ,
845c3ec676SGleb Smirnoffotherwise, it is enough to run
855c3ec676SGleb Smirnoff.Nm
865c3ec676SGleb Smirnoffwith a boot ROM of choice.
87b13e60daSPeter Grehan.Pp
88b13e60daSPeter Grehan.Nm
89b13e60daSPeter Grehanruns until the guest operating system reboots or an unhandled hypervisor
90b13e60daSPeter Grehanexit is detected.
91b13e60daSPeter Grehan.Sh OPTIONS
92b13e60daSPeter Grehan.Bl -tag -width 10n
93b13e60daSPeter Grehan.It Fl a
949777ca20SNeel NatuThe guest's local APIC is configured in xAPIC mode.
9584fe889cSChristian BruefferThe xAPIC mode is the default setting so this option is redundant.
9684fe889cSChristian BruefferIt will be deprecated in a future version.
97b13e60daSPeter Grehan.It Fl A
98b13e60daSPeter GrehanGenerate ACPI tables.
99b13e60daSPeter GrehanRequired for
100b13e60daSPeter Grehan.Fx Ns /amd64
101b13e60daSPeter Grehanguests.
1025749449dSJohn Baldwin.It Fl b
1035749449dSJohn BaldwinEnable a low-level console device supported by
104aca4343cSEdward Tomasz Napierala.Fx
105aca4343cSEdward Tomasz Napieralakernels compiled with
1065749449dSJohn Baldwin.Cd "device bvmconsole" .
1075749449dSJohn BaldwinThis option will be deprecated in a future version.
10801d822d3SRodney W. Grimes.It Fl c Op Ar setting ...
10901d822d3SRodney W. GrimesNumber of guest virtual CPUs
11001d822d3SRodney W. Grimesand/or the CPU topology.
11101d822d3SRodney W. GrimesThe default value for each of
11201d822d3SRodney W. Grimes.Ar numcpus ,
11301d822d3SRodney W. Grimes.Ar sockets ,
11401d822d3SRodney W. Grimes.Ar cores ,
11501d822d3SRodney W. Grimesand
11601d822d3SRodney W. Grimes.Ar threads
11701d822d3SRodney W. Grimesis 1.
11801d822d3SRodney W. GrimesThe current maximum number of guest virtual CPUs is 16.
11901d822d3SRodney W. GrimesIf
12001d822d3SRodney W. Grimes.Ar numcpus
12101d822d3SRodney W. Grimesis not specified then it will be calculated from the other arguments.
12201d822d3SRodney W. GrimesThe topology must be consistent in that the
12301d822d3SRodney W. Grimes.Ar numcpus
12401d822d3SRodney W. Grimesmust equal the product of
12501d822d3SRodney W. Grimes.Ar sockets ,
12601d822d3SRodney W. Grimes.Ar cores ,
12701d822d3SRodney W. Grimesand
12801d822d3SRodney W. Grimes.Ar threads .
12901d822d3SRodney W. GrimesIf a
13001d822d3SRodney W. Grimes.Ar setting
13101d822d3SRodney W. Grimesis specified more than once the last one has precedence.
1320dd10c00SNeel Natu.It Fl C
1330dd10c00SNeel NatuInclude guest memory in core file.
134*0a1016f9SPawel Biernacki.It Fl D
135*0a1016f9SPawel BiernackiDestroy the VM on guest initiated power-off.
136cde1f5b8SJohn Baldwin.It Fl e
137cde1f5b8SJohn BaldwinForce
138cde1f5b8SJohn Baldwin.Nm
139cde1f5b8SJohn Baldwinto exit when a guest issues an access to an I/O port that is not emulated.
140cde1f5b8SJohn BaldwinThis is intended for debug purposes.
141b13e60daSPeter Grehan.It Fl g Ar gdbport
142b13e60daSPeter GrehanFor
1435749449dSJohn Baldwin.Fx
1445749449dSJohn Baldwinkernels compiled with
1455749449dSJohn Baldwin.Cd "device bvmdebug" ,
146b13e60daSPeter Grehanallow a remote kernel kgdb to be relayed to the guest kernel gdb stub
147b13e60daSPeter Grehanvia a local IPv4 address and this port.
148b13e60daSPeter GrehanThis option will be deprecated in a future version.
149cd377eb3SJohn Baldwin.It Fl G Ar port
150cd377eb3SJohn BaldwinStart a debug server that uses the GDB protocol to export guest state to a
151cd377eb3SJohn Baldwindebugger.
152cd377eb3SJohn BaldwinAn IPv4 TCP socket will be bound to the supplied
153cd377eb3SJohn Baldwin.Ar port
154cd377eb3SJohn Baldwinto listen for debugger connections.
155cd377eb3SJohn BaldwinOnly a single debugger may be attached to the debug server at a time.
156cd377eb3SJohn BaldwinIf
157cd377eb3SJohn Baldwin.Ar port
158cd377eb3SJohn Baldwinbegins with
159cd377eb3SJohn Baldwin.Sq w ,
160cd377eb3SJohn Baldwin.Nm
161cd377eb3SJohn Baldwinwill pause execution at the first instruction waiting for a debugger to attach.
162cde1f5b8SJohn Baldwin.It Fl h
163cde1f5b8SJohn BaldwinPrint help message and exit.
164cde1f5b8SJohn Baldwin.It Fl H
165cde1f5b8SJohn BaldwinYield the virtual CPU thread when a HLT instruction is detected.
166cde1f5b8SJohn BaldwinIf this option is not specified, virtual CPUs will use 100% of a host CPU.
1671aa56353SMarcelo Araujo.It Fl l Op Ar help|lpcdev Ns Op , Ns Ar conf
168cde1f5b8SJohn BaldwinAllow devices behind the LPC PCI-ISA bridge to be configured.
1699b1aa8d6SNeel NatuThe only supported devices are the TTY-class devices
1709b1aa8d6SNeel Natu.Ar com1
171cde1f5b8SJohn Baldwinand
1729b1aa8d6SNeel Natu.Ar com2
1739b1aa8d6SNeel Natuand the boot ROM device
1749b1aa8d6SNeel Natu.Ar bootrom .
1751aa56353SMarcelo Araujo.Pp
1761aa56353SMarcelo Araujo.Ar help
1771aa56353SMarcelo Araujoprint a list of supported LPC devices.
1786ee52c65SRoman Bogorodskiy.It Fl m Ar memsize Ns Op Ar K|k|M|m|G|g|T|t
179cde1f5b8SJohn BaldwinGuest physical memory size in bytes.
180cde1f5b8SJohn BaldwinThis must be the same size that was given to
181cde1f5b8SJohn Baldwin.Xr bhyveload 8 .
182cde1f5b8SJohn Baldwin.Pp
183cde1f5b8SJohn BaldwinThe size argument may be suffixed with one of K, M, G or T (either upper
184cde1f5b8SJohn Baldwinor lower case) to indicate a multiple of kilobytes, megabytes, gigabytes,
185cde1f5b8SJohn Baldwinor terabytes.
186cde1f5b8SJohn BaldwinIf no suffix is given, the value is assumed to be in megabytes.
1876ee52c65SRoman Bogorodskiy.Pp
1886ee52c65SRoman Bogorodskiy.Ar memsize
1896ee52c65SRoman Bogorodskiydefaults to 256M.
1909b6155a2SNeel Natu.It Fl p Ar vcpu:hostcpu
1919b6155a2SNeel NatuPin guest's virtual CPU
1929b6155a2SNeel Natu.Em vcpu
1939b6155a2SNeel Natuto
1949b6155a2SNeel Natu.Em hostcpu .
195b13e60daSPeter Grehan.It Fl P
196b13e60daSPeter GrehanForce the guest virtual CPU to exit when a PAUSE instruction is detected.
197483d953aSJohn Baldwin.It Fl r Ar file
198483d953aSJohn BaldwinResume a guest from a snapshot.
199483d953aSJohn BaldwinThe guest memory contents are restored from
200483d953aSJohn Baldwin.Ar file ,
201483d953aSJohn Baldwinand the guest device and vCPU state are restored from the file
202483d953aSJohn Baldwin.Dq Ar file Ns .kern .
203483d953aSJohn Baldwin.Pp
204483d953aSJohn BaldwinNote that the current snapshot file format requires that the configuration of
205483d953aSJohn Baldwindevices in the new VM match the VM from which the snapshot was taken by specifying the
206483d953aSJohn Baldwinsame
207483d953aSJohn Baldwin.Op Fl s
208483d953aSJohn Baldwinand
209483d953aSJohn Baldwin.Op Fl l
210483d953aSJohn Baldwinoptions.
211483d953aSJohn BaldwinThe count of vCPUs and memory configuration are read from the snapshot.
2121aa56353SMarcelo Araujo.It Fl s Op Ar help|slot,emulation Ns Op , Ns Ar conf
213b13e60daSPeter GrehanConfigure a virtual PCI slot and function.
214b13e60daSPeter Grehan.Pp
21584fe889cSChristian Brueffer.Nm
216b13e60daSPeter Grehanprovides PCI bus emulation and virtual devices that can be attached to
217b13e60daSPeter Grehanslots on the bus.
218b13e60daSPeter GrehanThere are 32 available slots, with the option of providing up to 8 functions
219b13e60daSPeter Grehanper slot.
220b13e60daSPeter Grehan.Bl -tag -width 10n
2211aa56353SMarcelo Araujo.It Ar help
2221aa56353SMarcelo Araujoprint a list of supported PCI devices.
223b13e60daSPeter Grehan.It Ar slot
22406db1b4aSNeel Natu.Ar pcislot[:function]
22506db1b4aSNeel Natu.Ar bus:pcislot:function
226b13e60daSPeter Grehan.Pp
227b13e60daSPeter GrehanThe
228b13e60daSPeter Grehan.Ar pcislot
22984fe889cSChristian Brueffervalue is 0 to 31.
23084fe889cSChristian BruefferThe optional
23184fe889cSChristian Brueffer.Ar function
23284fe889cSChristian Brueffervalue is 0 to 7.
23384fe889cSChristian BruefferThe optional
23406db1b4aSNeel Natu.Ar bus
23506db1b4aSNeel Natuvalue is 0 to 255.
23684fe889cSChristian BruefferIf not specified, the
23784fe889cSChristian Brueffer.Ar function
23884fe889cSChristian Brueffervalue defaults to 0.
23984fe889cSChristian BruefferIf not specified, the
24084fe889cSChristian Brueffer.Ar bus
24184fe889cSChristian Brueffervalue defaults to 0.
242b13e60daSPeter Grehan.It Ar emulation
243b13e60daSPeter Grehan.Bl -tag -width 10n
244b13e60daSPeter Grehan.It Li hostbridge | Li amd_hostbridge
245b13e60daSPeter Grehan.Pp
246b13e60daSPeter GrehanProvide a simple host bridge.
247b13e60daSPeter GrehanThis is usually configured at slot 0, and is required by most guest
248b13e60daSPeter Grehanoperating systems.
249b13e60daSPeter GrehanThe
250b13e60daSPeter Grehan.Li amd_hostbridge
251b13e60daSPeter Grehanemulation is identical but uses a PCI vendor ID of
252b13e60daSPeter Grehan.Li AMD .
253b13e60daSPeter Grehan.It Li passthru
254b13e60daSPeter GrehanPCI pass-through device.
255b13e60daSPeter Grehan.It Li virtio-net
256b13e60daSPeter GrehanVirtio network interface.
257a8be8e5eSRemko Lodder.It Li virtio-blk
258b13e60daSPeter GrehanVirtio block storage interface.
259f9c005a1SMarcelo Araujo.It Li virtio-scsi
260f9c005a1SMarcelo AraujoVirtio SCSI interface.
2619d0c4e17SPeter Grehan.It Li virtio-rnd
2629d0c4e17SPeter GrehanVirtio RNG interface.
2635121b6ccSRoman Bogorodskiy.It Li virtio-console
2645121b6ccSRoman BogorodskiyVirtio console interface, which exposes multiple ports
2655121b6ccSRoman Bogorodskiyto the guest in the form of simple char devices for simple IO
2665121b6ccSRoman Bogorodskiybetween the guest and host userspaces.
267098f5155SAlexander Motin.It Li ahci
268d6099860SMaxim KonovalovAHCI controller attached to arbitrary devices.
269b13e60daSPeter Grehan.It Li ahci-cd
270b13e60daSPeter GrehanAHCI controller attached to an ATAPI CD/DVD.
271b13e60daSPeter Grehan.It Li ahci-hd
272b13e60daSPeter GrehanAHCI controller attached to a SATA hard-drive.
2739e749f25SAlexander Motin.It Li e1000
2749e749f25SAlexander MotinIntel e82545 network interface.
275b13e60daSPeter Grehan.It Li uart
276b13e60daSPeter GrehanPCI 16550 serial device.
277b13e60daSPeter Grehan.It Li lpc
2789b1aa8d6SNeel NatuLPC PCI-ISA bridge with COM1 and COM2 16550 serial ports and a boot ROM.
2799b1aa8d6SNeel NatuThe LPC bridge emulation can only be configured on bus 0.
2806c87a2c0SGleb Smirnoff.It Li fbuf
2816c87a2c0SGleb SmirnoffRaw framebuffer device attached to VNC server.
2826c87a2c0SGleb Smirnoff.It Li xhci
2835c3ec676SGleb SmirnoffeXtensible Host Controller Interface (xHCI) USB controller.
284c066c68cSMarcelo Araujo.It Li nvme
285c066c68cSMarcelo AraujoNVM Express (NVMe) controller.
28636f9f044SWarner Losh.It Li hda
28736f9f044SWarner LoshHigh Definition Audio Controller.
288b13e60daSPeter Grehan.El
289b13e60daSPeter Grehan.It Op Ar conf
290b13e60daSPeter GrehanThis optional parameter describes the backend for device emulations.
291b13e60daSPeter GrehanIf
292b13e60daSPeter Grehan.Ar conf
293b13e60daSPeter Grehanis not specified, the device emulation has no backend and can be
294b13e60daSPeter Grehanconsidered unconnected.
295b13e60daSPeter Grehan.Pp
296e90337e4SAleksandr FedorovNetwork backends:
297b13e60daSPeter Grehan.Bl -tag -width 10n
298692dbfe9SVincenzo Maffione.It Ar tapN Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc
299692dbfe9SVincenzo Maffione.It Ar vmnetN Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc
300e90337e4SAleksandr Fedorov.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
301b13e60daSPeter Grehan.Pp
302b13e60daSPeter GrehanIf
303b13e60daSPeter Grehan.Ar mac
304b13e60daSPeter Grehanis not specified, the MAC address is derived from a fixed OUI and the
305b13e60daSPeter Grehanremaining bytes from an MD5 hash of the slot and function numbers and
306b13e60daSPeter Grehanthe device name.
307b13e60daSPeter Grehan.Pp
308b13e60daSPeter GrehanThe MAC address is an ASCII string in
309b13e60daSPeter Grehan.Xr ethers 5
310b13e60daSPeter Grehanformat.
311692dbfe9SVincenzo Maffione.Pp
312692dbfe9SVincenzo MaffioneWith virtio-net devices, the
313692dbfe9SVincenzo Maffione.Ar mtu
314692dbfe9SVincenzo Maffioneparameter can be specified to inform the guest about the largest MTU
315692dbfe9SVincenzo Maffionethat should be allowed, expressed in bytes.
316e90337e4SAleksandr Fedorov.Pp
317e90337e4SAleksandr FedorovWith netgraph backend, the
318e90337e4SAleksandr Fedorov.Ar path
319e90337e4SAleksandr Fedorovand
320e90337e4SAleksandr Fedorov.Ar peerhook
321e90337e4SAleksandr Fedorovparameters must be specified to set the destination node and corresponding hook.
322e90337e4SAleksandr FedorovThe optional parameters
323e90337e4SAleksandr Fedorov.Ar socket
324e90337e4SAleksandr Fedorovand
325e90337e4SAleksandr Fedorov.Ar hook
326e90337e4SAleksandr Fedorovmay be used to set the
327e90337e4SAleksandr Fedorov.Xr ng_socket 4
328e90337e4SAleksandr Fedorovnode name and source hook.
329e90337e4SAleksandr FedorovThe
330e90337e4SAleksandr Fedorov.Ar ADDRESS ,
331e90337e4SAleksandr Fedorov.Ar HOOK
332e90337e4SAleksandr Fedorovand
333e90337e4SAleksandr Fedorov.Ar NAME
334e90337e4SAleksandr Fedorovmust comply with
335e90337e4SAleksandr Fedorov.Xr netgraph 4
336e90337e4SAleksandr Fedorovaddressing rules.
337b13e60daSPeter Grehan.El
338b13e60daSPeter Grehan.Pp
339b13e60daSPeter GrehanBlock storage devices:
340b13e60daSPeter Grehan.Bl -tag -width 10n
3414e43c1e8SNeel Natu.It Pa /filename Ns Oo , Ns Ar block-device-options Oc
3424e43c1e8SNeel Natu.It Pa /dev/xxx Ns Oo , Ns Ar block-device-options Oc
3434e43c1e8SNeel Natu.El
3444e43c1e8SNeel Natu.Pp
3454e43c1e8SNeel NatuThe
3464e43c1e8SNeel Natu.Ar block-device-options
3474e43c1e8SNeel Natuare:
348b13e60daSPeter Grehan.Bl -tag -width 8n
349b13e60daSPeter Grehan.It Li nocache
350b13e60daSPeter GrehanOpen the file with
351b13e60daSPeter Grehan.Dv O_DIRECT .
352b13e60daSPeter Grehan.It Li direct
353b13e60daSPeter GrehanOpen the file using
354b13e60daSPeter Grehan.Dv O_SYNC .
355b13e60daSPeter Grehan.It Li ro
356b13e60daSPeter GrehanForce the file to be opened read-only.
3574e43c1e8SNeel Natu.It Li sectorsize= Ns Ar logical Ns Oo / Ns Ar physical Oc
3584e43c1e8SNeel NatuSpecify the logical and physical sector sizes of the emulated disk.
3594e43c1e8SNeel NatuThe physical sector size is optional and is equal to the logical sector size
3604e43c1e8SNeel Natuif not explicitly specified.
361b13e60daSPeter Grehan.El
362b13e60daSPeter Grehan.Pp
363f9c005a1SMarcelo AraujoSCSI devices:
364f9c005a1SMarcelo Araujo.Bl -tag -width 10n
36549f87822SAlexander Motin.It Pa /dev/cam/ctl Ns Oo Ar pp . Ns Ar vp Oc Ns Oo , Ns Ar scsi-device-options Oc
36649f87822SAlexander Motin.El
36749f87822SAlexander Motin.Pp
36849f87822SAlexander MotinThe
36949f87822SAlexander Motin.Ar scsi-device-options
37049f87822SAlexander Motinare:
37149f87822SAlexander Motin.Bl -tag -width 10n
37249f87822SAlexander Motin.It Li iid= Ns Ar IID
37349f87822SAlexander MotinInitiator ID to use when sending requests to specified CTL port.
37449f87822SAlexander MotinThe default value is 0.
375f9c005a1SMarcelo Araujo.El
376f9c005a1SMarcelo Araujo.Pp
377b13e60daSPeter GrehanTTY devices:
378b13e60daSPeter Grehan.Bl -tag -width 10n
379b13e60daSPeter Grehan.It Li stdio
380b13e60daSPeter GrehanConnect the serial port to the standard input and output of
38184fe889cSChristian Bruefferthe
38284fe889cSChristian Brueffer.Nm
38384fe889cSChristian Bruefferprocess.
384b13e60daSPeter Grehan.It Pa /dev/xxx
385b13e60daSPeter GrehanUse the host TTY device for serial port I/O.
386b13e60daSPeter Grehan.El
387b13e60daSPeter Grehan.Pp
3889b1aa8d6SNeel NatuBoot ROM device:
3899b1aa8d6SNeel Natu.Bl -tag -width 10n
3909b1aa8d6SNeel Natu.It Pa romfile
3919b1aa8d6SNeel NatuMap
3929b1aa8d6SNeel Natu.Ar romfile
3939b1aa8d6SNeel Natuin the guest address space reserved for boot firmware.
3949b1aa8d6SNeel Natu.El
3959b1aa8d6SNeel Natu.Pp
396b13e60daSPeter GrehanPass-through devices:
397b13e60daSPeter Grehan.Bl -tag -width 10n
398b13e60daSPeter Grehan.It Ns Ar slot Ns / Ns Ar bus Ns / Ns Ar function
399b13e60daSPeter GrehanConnect to a PCI device on the host at the selector described by
400b13e60daSPeter Grehan.Ar slot ,
401b13e60daSPeter Grehan.Ar bus ,
402b13e60daSPeter Grehanand
403b13e60daSPeter Grehan.Ar function
404b13e60daSPeter Grehannumbers.
405b13e60daSPeter Grehan.El
406b13e60daSPeter Grehan.Pp
4079b1aa8d6SNeel NatuGuest memory must be wired using the
4089b1aa8d6SNeel Natu.Fl S
4099b1aa8d6SNeel Natuoption when a pass-through device is configured.
4109b1aa8d6SNeel Natu.Pp
411b13e60daSPeter GrehanThe host device must have been reserved at boot-time using the
412a9258f9bSWarren Block.Va pptdevs
413b13e60daSPeter Grehanloader variable as described in
414b13e60daSPeter Grehan.Xr vmm 4 .
4155121b6ccSRoman Bogorodskiy.Pp
4165121b6ccSRoman BogorodskiyVirtio console devices:
4175121b6ccSRoman Bogorodskiy.Bl -tag -width 10n
4185121b6ccSRoman Bogorodskiy.It Li port1= Ns Pa /path/to/port1.sock Ns ,anotherport= Ns Pa ...
4195121b6ccSRoman BogorodskiyA maximum of 16 ports per device can be created.
4205121b6ccSRoman BogorodskiyEvery port is named and corresponds to a Unix domain socket created by
4215121b6ccSRoman Bogorodskiy.Nm .
4225121b6ccSRoman Bogorodskiy.Nm
4235121b6ccSRoman Bogorodskiyaccepts at most one connection per port at a time.
4245121b6ccSRoman Bogorodskiy.Pp
4255121b6ccSRoman BogorodskiyLimitations:
4265121b6ccSRoman Bogorodskiy.Bl -bullet -offset 2n
4275121b6ccSRoman Bogorodskiy.It
4285121b6ccSRoman BogorodskiyDue to lack of destructors in
4295121b6ccSRoman Bogorodskiy.Nm ,
4305121b6ccSRoman Bogorodskiysockets on the filesystem must be cleaned up manually after
4315121b6ccSRoman Bogorodskiy.Nm
4325121b6ccSRoman Bogorodskiyexits.
4335121b6ccSRoman Bogorodskiy.It
4345121b6ccSRoman BogorodskiyThere is no way to use the "console port" feature, nor the console port
4350ee3a4b4SRoman Bogorodskiyresize at present.
4365121b6ccSRoman Bogorodskiy.It
4370ee3a4b4SRoman BogorodskiyEmergency write is advertised, but no-op at present.
4385121b6ccSRoman Bogorodskiy.El
4395121b6ccSRoman Bogorodskiy.El
4406c87a2c0SGleb Smirnoff.Pp
4415c3ec676SGleb SmirnoffFramebuffer devices:
4425c3ec676SGleb Smirnoff.Bl -tag -width 10n
4438d56c805SYuri Pankov.It Xo
4448d56c805SYuri Pankov.Oo rfb= Ns Oo Ar IP\&: Oc Ns Ar port Oc Ns Oo ,w= Ns Ar width Oc Ns Oo ,h= Ns
4458d56c805SYuri Pankov.Ar height Oc Ns Oo ,vga= Ns Ar vgaconf Oc Ns Oo Ns ,wait Oc Ns Oo ,password= Ns
4468d56c805SYuri Pankov.Ar password Oc
4478d56c805SYuri Pankov.Xc
4485c3ec676SGleb Smirnoff.Bl -tag -width 8n
4498883128bSBjoern A. Zeeb.It Ar IPv4:port No or Ar [IPv6%zone]:port
4505c3ec676SGleb SmirnoffAn
4515c3ec676SGleb Smirnoff.Ar IP
4525c3ec676SGleb Smirnoffaddress and a
4535c3ec676SGleb Smirnoff.Ar port
4545c3ec676SGleb SmirnoffVNC should listen on.
4556c87a2c0SGleb SmirnoffThe default is to listen on localhost IPv4 address and default VNC port 5900.
4568883128bSBjoern A. ZeebAn IPv6 address must be enclosed in square brackets and may contain an
4577d9545fcSRodney W. Grimesoptional zone identifier.
4585c3ec676SGleb Smirnoff.It Ar width No and Ar height
4595c3ec676SGleb SmirnoffA display resolution, width and height, respectively.
4605c3ec676SGleb SmirnoffIf not specified, a default resolution of 1024x768 pixels will be used.
4615c3ec676SGleb SmirnoffMinimal supported resolution is 640x480 pixels,
4625c3ec676SGleb Smirnoffand maximum is 1920x1200 pixels.
4635c3ec676SGleb Smirnoff.It Ar vgaconf
4645c3ec676SGleb SmirnoffPossible values for this option are
4655c3ec676SGleb Smirnoff.Dq io
4665c3ec676SGleb Smirnoff(default),
4675c3ec676SGleb Smirnoff.Dq on
4685c3ec676SGleb Smirnoff, and
4695c3ec676SGleb Smirnoff.Dq off .
4705c3ec676SGleb SmirnoffPCI graphics cards have a dual personality in that they are
4715c3ec676SGleb Smirnoffstandard PCI devices with BAR addressing, but may also
4725c3ec676SGleb Smirnoffimplicitly decode legacy VGA I/O space
4735c3ec676SGleb Smirnoff.Pq Ad 0x3c0-3df
4745c3ec676SGleb Smirnoffand memory space
4755c3ec676SGleb Smirnoff.Pq 64KB at Ad 0xA0000 .
4765c3ec676SGleb SmirnoffThe default
4775c3ec676SGleb Smirnoff.Dq io
4788d56c805SYuri Pankovoption should be used for guests that attempt to issue BIOS calls which result
4798d56c805SYuri Pankovin I/O port queries, and fail to boot if I/O decode is disabled.
4805c3ec676SGleb Smirnoff.Pp
4815c3ec676SGleb SmirnoffThe
4825c3ec676SGleb Smirnoff.Dq on
4835c3ec676SGleb Smirnoffoption should be used along with the CSM BIOS capability in UEFI
4845c3ec676SGleb Smirnoffto boot traditional BIOS guests that require the legacy VGA I/O and
4855c3ec676SGleb Smirnoffmemory regions to be available.
4865c3ec676SGleb Smirnoff.Pp
4875c3ec676SGleb SmirnoffThe
4885c3ec676SGleb Smirnoff.Dq off
4895c3ec676SGleb Smirnoffoption should be used for the UEFI guests that assume that
4905c3ec676SGleb SmirnoffVGA adapter is present if they detect the I/O ports.
4915c3ec676SGleb SmirnoffAn example of such a guest is
4925c3ec676SGleb Smirnoff.Ox
4935c3ec676SGleb Smirnoffin UEFI mode.
4945c3ec676SGleb Smirnoff.Pp
4955c3ec676SGleb SmirnoffPlease refer to the
4965c3ec676SGleb Smirnoff.Nm
4975c3ec676SGleb Smirnoff.Fx
4985c3ec676SGleb Smirnoffwiki page
4995c3ec676SGleb Smirnoff.Pq Lk https://wiki.freebsd.org/bhyve
5005c3ec676SGleb Smirnofffor configuration notes of particular guests.
5015c3ec676SGleb Smirnoff.It wait
5025c3ec676SGleb SmirnoffInstruct
5035c3ec676SGleb Smirnoff.Nm
5048d56c805SYuri Pankovto only boot upon the initiation of a VNC connection, simplifying the
5058d56c805SYuri Pankovinstallation of operating systems that require immediate keyboard input.
5065c3ec676SGleb SmirnoffThis can be removed for post-installation use.
507f4d34383SMarcelo Araujo.It password
508f4d34383SMarcelo AraujoThis type of authentication is known to be cryptographically weak and is not
509f4d34383SMarcelo Araujointended for use on untrusted networks.
510f4d34383SMarcelo AraujoMany implementations will want to use stronger security, such as running
511f4d34383SMarcelo Araujothe session over an encrypted channel provided by IPsec or SSH.
5125c3ec676SGleb Smirnoff.El
5136c87a2c0SGleb Smirnoff.El
5146c87a2c0SGleb Smirnoff.Pp
5155c3ec676SGleb SmirnoffxHCI USB devices:
5165c3ec676SGleb Smirnoff.Bl -tag -width 10n
5175c3ec676SGleb Smirnoff.It Li tablet
5185c3ec676SGleb SmirnoffA USB tablet device which provides precise cursor synchronization
5195c3ec676SGleb Smirnoffwhen using VNC.
5206c87a2c0SGleb Smirnoff.El
521c066c68cSMarcelo Araujo.Pp
522c066c68cSMarcelo AraujoNVMe devices:
523c066c68cSMarcelo Araujo.Bl -tag -width 10n
524c066c68cSMarcelo Araujo.It Li devpath
525c066c68cSMarcelo AraujoAccepted device paths are:
526c066c68cSMarcelo Araujo.Ar /dev/blockdev
527c066c68cSMarcelo Araujoor
528c066c68cSMarcelo Araujo.Ar /path/to/image
529c066c68cSMarcelo Araujoor
530c066c68cSMarcelo Araujo.Ar ram=size_in_MiB .
531c066c68cSMarcelo Araujo.It Li maxq
532c066c68cSMarcelo AraujoMax number of queues.
533c066c68cSMarcelo Araujo.It Li qsz
534c066c68cSMarcelo AraujoMax elements in each queue.
535c066c68cSMarcelo Araujo.It Li ioslots
536c066c68cSMarcelo AraujoMax number of concurrent I/O requests.
537c066c68cSMarcelo Araujo.It Li sectsz
538c066c68cSMarcelo AraujoSector size (defaults to blockif sector size).
539c066c68cSMarcelo Araujo.It Li ser
540c066c68cSMarcelo AraujoSerial number with maximum 20 characters.
541c066c68cSMarcelo Araujo.El
54236f9f044SWarner Losh.Pp
54336f9f044SWarner LoshHD Audio devices:
54436f9f044SWarner Losh.Bl -tag -width 10n
54536f9f044SWarner Losh.It Li play
54636f9f044SWarner LoshPlayback device, typically
54736f9f044SWarner Losh.Ar /dev/dsp0 .
54836f9f044SWarner Losh.It Li rec
54936f9f044SWarner LoshRecording device, typically
55036f9f044SWarner Losh.Ar /dev/dsp0 .
55136f9f044SWarner Losh.El
552b13e60daSPeter Grehan.El
5539b1aa8d6SNeel Natu.It Fl S
5549b1aa8d6SNeel NatuWire guest memory.
555c9747678SNeel Natu.It Fl u
556c9747678SNeel NatuRTC keeps UTC time.
5575749449dSJohn Baldwin.It Fl U Ar uuid
5585749449dSJohn BaldwinSet the universally unique identifier
5595749449dSJohn Baldwin.Pq UUID
5605749449dSJohn Baldwinin the guest's System Management BIOS System Information structure.
5615749449dSJohn BaldwinBy default a UUID is generated from the host's hostname and
5625749449dSJohn Baldwin.Ar vmname .
563851d84f1SNeel Natu.It Fl w
56484fe889cSChristian BruefferIgnore accesses to unimplemented Model Specific Registers (MSRs).
56584fe889cSChristian BruefferThis is intended for debug purposes.
566cde1f5b8SJohn Baldwin.It Fl W
567cde1f5b8SJohn BaldwinForce virtio PCI device emulations to use MSI interrupts instead of MSI-X
568cde1f5b8SJohn Baldwininterrupts.
5699777ca20SNeel Natu.It Fl x
5709777ca20SNeel NatuThe guest's local APIC is configured in x2APIC mode.
571b100acf2SNeel Natu.It Fl Y
572b100acf2SNeel NatuDisable MPtable generation.
573b13e60daSPeter Grehan.It Ar vmname
574b13e60daSPeter GrehanAlphanumeric name of the guest.
575b13e60daSPeter GrehanThis should be the same as that created by
576b13e60daSPeter Grehan.Xr bhyveload 8 .
577b13e60daSPeter Grehan.El
578cd377eb3SJohn Baldwin.Sh DEBUG SERVER
579cd377eb3SJohn BaldwinThe current debug server provides limited support for debuggers.
580cd377eb3SJohn Baldwin.Ss Registers
581cd377eb3SJohn BaldwinEach virtual CPU is exposed to the debugger as a thread.
582cd377eb3SJohn Baldwin.Pp
583cd377eb3SJohn BaldwinGeneral purpose registers can be queried for each virtual CPU, but other
584cd377eb3SJohn Baldwinregisters such as floating-point and system registers cannot be queried.
585cd377eb3SJohn Baldwin.Ss Memory
586976ba8c6SJohn BaldwinMemory (including memory mapped I/O regions) can be read and written by the debugger.
5878d56c805SYuri PankovMemory operations use virtual addresses that are resolved to physical addresses
5888d56c805SYuri Pankovvia the current virtual CPU's active address translation.
589cd377eb3SJohn Baldwin.Ss Control
590cd377eb3SJohn BaldwinThe running guest can be interrupted by the debugger at any time
591cd377eb3SJohn Baldwin.Pq for example, by pressing Ctrl-C in the debugger .
592cd377eb3SJohn Baldwin.Pp
593cd377eb3SJohn BaldwinSingle stepping is only supported on Intel CPUs supporting the MTRAP VM exit.
594cd377eb3SJohn Baldwin.Pp
595cbd03a9dSJohn BaldwinBreakpoints are supported on Intel CPUs that support single stepping.
596cbd03a9dSJohn BaldwinNote that continuing from a breakpoint while interrupts are enabled in the
597cbd03a9dSJohn Baldwinguest may not work as expected due to timer interrupts firing while single
598cbd03a9dSJohn Baldwinstepping over the breakpoint.
599c2202d41SRoman Bogorodskiy.Sh SIGNAL HANDLING
600c2202d41SRoman Bogorodskiy.Nm
601c2202d41SRoman Bogorodskiydeals with the following signals:
602c2202d41SRoman Bogorodskiy.Pp
603c2202d41SRoman Bogorodskiy.Bl -tag -width indent -compact
604c2202d41SRoman Bogorodskiy.It SIGTERM
605c2202d41SRoman BogorodskiyTrigger ACPI poweroff for a VM
606c2202d41SRoman Bogorodskiy.El
607c2202d41SRoman Bogorodskiy.Sh EXIT STATUS
608c2202d41SRoman BogorodskiyExit status indicates how the VM was terminated:
609c2202d41SRoman Bogorodskiy.Pp
610c2202d41SRoman Bogorodskiy.Bl -tag -width indent -compact
611c2202d41SRoman Bogorodskiy.It 0
612c2202d41SRoman Bogorodskiyrebooted
613c2202d41SRoman Bogorodskiy.It 1
614c2202d41SRoman Bogorodskiypowered off
615c2202d41SRoman Bogorodskiy.It 2
616c2202d41SRoman Bogorodskiyhalted
617c2202d41SRoman Bogorodskiy.It 3
618c2202d41SRoman Bogorodskiytriple fault
619989e062bSMarcelo Araujo.It 4
620989e062bSMarcelo Araujoexited due to an error
621c2202d41SRoman Bogorodskiy.El
622b13e60daSPeter Grehan.Sh EXAMPLES
6235c3ec676SGleb SmirnoffIf not using a boot ROM, the guest operating system must have been loaded with
62484fe889cSChristian Brueffer.Xr bhyveload 8
625b13e60daSPeter Grehanor a similar boot loader before
626b13e60daSPeter Grehan.Xr bhyve 4
627b13e60daSPeter Grehancan be run.
6285c3ec676SGleb SmirnoffOtherwise, the boot loader is not needed.
629b13e60daSPeter Grehan.Pp
630b13e60daSPeter GrehanTo run a virtual machine with 1GB of memory, two virtual CPUs, a virtio
631b13e60daSPeter Grehanblock device backed by the
632b13e60daSPeter Grehan.Pa /my/image
633b13e60daSPeter Grehanfilesystem image, and a serial port for the console:
634b13e60daSPeter Grehan.Bd -literal -offset indent
635b13e60daSPeter Grehanbhyve -c 2 -s 0,hostbridge -s 1,lpc -s 2,virtio-blk,/my/image \\
636b13e60daSPeter Grehan  -l com1,stdio -A -H -P -m 1G vm1
637b13e60daSPeter Grehan.Ed
638b13e60daSPeter Grehan.Pp
639b13e60daSPeter GrehanRun a 24GB single-CPU virtual machine with three network ports, one of which
640b13e60daSPeter Grehanhas a MAC address specified:
641b13e60daSPeter Grehan.Bd -literal -offset indent
642b13e60daSPeter Grehanbhyve -s 0,hostbridge -s 1,lpc -s 2:0,virtio-net,tap0 \\
643b13e60daSPeter Grehan  -s 2:1,virtio-net,tap1 \\
644b13e60daSPeter Grehan  -s 2:2,virtio-net,tap2,mac=00:be:fa:76:45:00 \\
645b13e60daSPeter Grehan  -s 3,virtio-blk,/my/image -l com1,stdio \\
646b13e60daSPeter Grehan  -A -H -P -m 24G bigvm
647b13e60daSPeter Grehan.Ed
648b13e60daSPeter Grehan.Pp
649b13e60daSPeter GrehanRun an 8GB quad-CPU virtual machine with 8 AHCI SATA disks, an AHCI ATAPI
650b13e60daSPeter GrehanCD-ROM, a single virtio network port, an AMD hostbridge, and the console
651b13e60daSPeter Grehanport connected to an
652b13e60daSPeter Grehan.Xr nmdm 4
65384fe889cSChristian Brueffernull-modem device.
654b13e60daSPeter Grehan.Bd -literal -offset indent
655a7ab1463SAlexander Motinbhyve -c 4 \\
656b13e60daSPeter Grehan  -s 0,amd_hostbridge -s 1,lpc \\
657098f5155SAlexander Motin  -s 1:0,ahci,hd:/images/disk.1,hd:/images/disk.2,\\
658098f5155SAlexander Motinhd:/images/disk.3,hd:/images/disk.4,\\
659098f5155SAlexander Motinhd:/images/disk.5,hd:/images/disk.6,\\
660098f5155SAlexander Motinhd:/images/disk.7,hd:/images/disk.8,\\
661098f5155SAlexander Motincd:/images/install.iso \\
662b13e60daSPeter Grehan  -s 3,virtio-net,tap0 \\
663b13e60daSPeter Grehan  -l com1,/dev/nmdm0A \\
664b13e60daSPeter Grehan  -A -H -P -m 8G
665b13e60daSPeter Grehan.Ed
6665c3ec676SGleb Smirnoff.Pp
6675c3ec676SGleb SmirnoffRun a UEFI virtual machine with a display resolution of 800 by 600 pixels
6685c3ec676SGleb Smirnoffthat can be accessed via VNC at: 0.0.0.0:5900.
6695c3ec676SGleb Smirnoff.Bd -literal -offset indent
6705c3ec676SGleb Smirnoffbhyve -c 2 -m 4G -w -H \\
6715c3ec676SGleb Smirnoff  -s 0,hostbridge \\
6725c3ec676SGleb Smirnoff  -s 3,ahci-cd,/path/to/uefi-OS-install.iso \\
6735c3ec676SGleb Smirnoff  -s 4,ahci-hd,disk.img \\
6745c3ec676SGleb Smirnoff  -s 5,virtio-net,tap0 \\
6755c3ec676SGleb Smirnoff  -s 29,fbuf,tcp=0.0.0.0:5900,w=800,h=600,wait \\
6765c3ec676SGleb Smirnoff  -s 30,xhci,tablet \\
6775c3ec676SGleb Smirnoff  -s 31,lpc -l com1,stdio \\
6785c3ec676SGleb Smirnoff  -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \\
6795c3ec676SGleb Smirnoff   uefivm
6805c3ec676SGleb Smirnoff.Ed
6818883128bSBjoern A. Zeeb.Pp
6828883128bSBjoern A. ZeebRun a UEFI virtual machine with a VNC display that is bound to all IPv6
6838883128bSBjoern A. Zeebaddresses on port 5900.
6848883128bSBjoern A. Zeeb.Bd -literal -offset indent
6858883128bSBjoern A. Zeebbhyve -c 2 -m 4G -w -H \\
6868883128bSBjoern A. Zeeb  -s 0,hostbridge \\
6878883128bSBjoern A. Zeeb  -s 4,ahci-hd,disk.img \\
6888883128bSBjoern A. Zeeb  -s 5,virtio-net,tap0 \\
6898883128bSBjoern A. Zeeb  -s 29,fbuf,tcp=[::]:5900,w=800,h=600 \\
6908883128bSBjoern A. Zeeb  -s 30,xhci,tablet \\
6918883128bSBjoern A. Zeeb  -s 31,lpc -l com1,stdio \\
6928883128bSBjoern A. Zeeb  -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \\
6938883128bSBjoern A. Zeeb   uefivm
6948883128bSBjoern A. Zeeb.Ed
695b13e60daSPeter Grehan.Sh SEE ALSO
696b13e60daSPeter Grehan.Xr bhyve 4 ,
697e90337e4SAleksandr Fedorov.Xr netgraph 4 ,
698e90337e4SAleksandr Fedorov.Xr ng_socket 4 ,
699b13e60daSPeter Grehan.Xr nmdm 4 ,
700b13e60daSPeter Grehan.Xr vmm 4 ,
701b13e60daSPeter Grehan.Xr ethers 5 ,
70205f7cd8bSJoel Dahl.Xr bhyvectl 8 ,
70305f7cd8bSJoel Dahl.Xr bhyveload 8
7048d56c805SYuri Pankov.Pp
7058d56c805SYuri Pankov.Rs
7068d56c805SYuri Pankov.%A Intel
7078d56c805SYuri Pankov.%B 64 and IA-32 Architectures Software Developer’s Manual
7088d56c805SYuri Pankov.%V Volume 3
7098d56c805SYuri Pankov.Re
710b13e60daSPeter Grehan.Sh HISTORY
711b13e60daSPeter Grehan.Nm
712b13e60daSPeter Grehanfirst appeared in
713b13e60daSPeter Grehan.Fx 10.0 .
714b13e60daSPeter Grehan.Sh AUTHORS
71501c2b8acSBaptiste Daroussin.An Neel Natu Aq Mt neel@freebsd.org
71601c2b8acSBaptiste Daroussin.An Peter Grehan Aq Mt grehan@freebsd.org
717