From owner-svn-doc-all@freebsd.org Tue Mar 28 00:09:28 2017 Return-Path: Delivered-To: svn-doc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7B3C8D1E2C6; Tue, 28 Mar 2017 00:09:28 +0000 (UTC) (envelope-from dexter@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 530D9F50; Tue, 28 Mar 2017 00:09:28 +0000 (UTC) (envelope-from dexter@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2S09Rx0061336; Tue, 28 Mar 2017 00:09:27 GMT (envelope-from dexter@FreeBSD.org) Received: (from dexter@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2S09RWS061335; Tue, 28 Mar 2017 00:09:27 GMT (envelope-from dexter@FreeBSD.org) Message-Id: <201703280009.v2S09RWS061335@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dexter set sender to dexter@FreeBSD.org using -f From: Michael Dexter Date: Tue, 28 Mar 2017 00:09:27 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r50094 - head/en_US.ISO8859-1/books/handbook/virtualization X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire doc trees \(except for " user" , " projects" , and " translations" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Mar 2017 00:09:28 -0000 Author: dexter Date: Tue Mar 28 00:09:27 2017 New Revision: 50094 URL: https://svnweb.freebsd.org/changeset/doc/50094 Log: Add UEFI section to the Virtualization chapter PR: 215762 Submitted by: czarkoff@gmail.com Approved by: bcr (mentor) Modified: head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml Modified: head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml ============================================================================== --- head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml Mon Mar 27 23:24:14 2017 (r50093) +++ head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml Tue Mar 28 00:09:27 2017 (r50094) @@ -91,7 +91,7 @@ Know how to install additional - third-party software. + third-party software. @@ -971,9 +971,9 @@ perm pass* 0660 BSD-licensed hypervisor became part of the base system with &os; 10.0-RELEASE. This hypervisor supports a number of guests, including &os;, OpenBSD, and many &linux; - distributions. Currently, bhyve only - supports a serial console and does not emulate a graphical - console. Virtualization offload features of newer + distributions. By default, bhyve + provides access to serial console and does not emulate a + graphical console. Virtualization offload features of newer CPUs are used to avoid the legacy methods of translating instructions and manually managing memory mappings. @@ -1175,6 +1175,81 @@ grub> boot&prompt.root; bhyvectl --destroy --vm=linuxguest + + Booting <application>bhyve</application> Virtual Machines + with <acronym>UEFI</acronym> Firmware + + In addition to bhyveload and + grub-bhyve, the + bhyve hypervisor can also boot + virtual machines using the UEFI userspace + firmware. This option may support guest operating systems + that are not supported by the other loaders. + + In order to make use of the UEFI + support in bhyve, first obtain the + UEFI firmware images. This can be done + by installing sysutils/bhyve-firmware + port or package. + + With the firmware in place, add the flags + + to your bhyve command line. + The actual bhyve command may look + like this: + + &prompt.root; bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \ +-s 2:0,virtio-net,tap1 -s 3:0,virtio-blk,./disk.img \ +-s 4:0,ahci-cd,./install.iso -c 4 -m 1024M \ +-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \ +guest + + sysutils/bhyve-firmware also contains a + CSM-enabled firmware, to boot guests with no + UEFI support in legacy + BIOS mode: + + &prompt.root; bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \ +-s 2:0,virtio-net,tap1 -s 3:0,virtio-blk,./disk.img \ +-s 4:0,ahci-cd,./install.iso -c 4 -m 1024M \ +-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI_CSM.fd \ +guest + + + + Graphical <acronym>UEFI</acronym> Framebuffer for + <application>bhyve</application> Guests + + The UEFI firmware support is particularly + useful with predominantly graphical guest operating systems + such as Microsoft &windows;. + + Support for the UEFI-GOP framebuffer may also be enabled + with the + flags. The framebuffer resolution may be configured with + and + , and + bhyve can be instructed to wait for + a VNC connection before booting the guest + by adding . The framebuffer may be + accessed from the host or over the network via the + VNC protocol. + + The resulting bhyve command + would look like this: + + &prompt.root; bhyve -AHP -s 0:0,hostbridge -s 31:0,lpc \ +-s 2:0,virtio-net,tap1 -s 3:0,virtio-blk,./disk.img \ +-s 4:0,ahci-cd,./install.iso -c 4 -m 1024M \ +-s 29,fbuf,tcp=0.0.0.0:5900,w=800,h=600,wait \ +-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \ +guest + + Note, in BIOS emulation mode, the framebuffer will cease + receiving updates once control is passed from firmware to + guest operating system. + + Using <acronym>ZFS</acronym> with <application>bhyve</application> Guests