[libvirt] [PATCHv8 0/7] Add non-FreeBSD guest support to Bhyve driver.
Michal Privoznik
mprivozn at redhat.com
Tue Nov 11 14:52:36 UTC 2014
On 08.11.2014 17:48, Conrad Meyer wrote:
> Drvbhyve hardcodes bhyveload(8) as the host bootloader for guests.
> bhyveload(8) loader only supports FreeBSD guests.
>
> This patch series adds <bootloader> and <bootloader_args> handling to
> bhyve_command, so libvirt can boot non-FreeBSD guests in Bhyve.
>
> Additionally, support for grub-bhyve(1)'s --cons-dev argument is added so that
> interactive GRUB menus can be manipulated with the domain-configured serial
> device.
>
> See patch logs for further details.
>
> Thanks,
> Conrad
>
> Changes in v8:
> - Fix typo in virBhyveProcessStart that prevented booting bhyve VMs.
>
> Conrad Meyer (7):
> bhyve: Support /domain/bootloader configuration for non-FreeBSD
> guests.
> bhyvexml2argv: Add loader argv tests.
> domaincommon.rng: Add 'bootloader' to os=hvm schema for Bhyve
> bhyvexml2argv: Add tests for domain-configured bootloader, args
> bhyve: Probe grub-bhyve for --cons-dev capability
> bhyve: Add console support for grub-bhyve bootloader
> bhyvexml2argv: Add test for grub console support
>
> docs/drvbhyve.html.in | 100 ++++++++++-
> docs/formatdomain.html.in | 4 +-
> docs/schemas/domaincommon.rng | 17 +-
> src/bhyve/bhyve_capabilities.c | 37 ++++
> src/bhyve/bhyve_capabilities.h | 3 +
> src/bhyve/bhyve_command.c | 189 +++++++++++++++++++--
> src/bhyve/bhyve_command.h | 5 +-
> src/bhyve/bhyve_driver.c | 16 +-
> src/bhyve/bhyve_driver.h | 2 +
> src/bhyve/bhyve_process.c | 38 ++++-
> src/bhyve/bhyve_utils.h | 2 +
> .../bhyvexml2argv-acpiapic.ldargs | 1 +
> tests/bhyvexml2argvdata/bhyvexml2argv-base.ldargs | 1 +
> .../bhyvexml2argv-bhyveload-explicitargs.args | 3 +
> .../bhyvexml2argv-bhyveload-explicitargs.ldargs | 1 +
> .../bhyvexml2argv-bhyveload-explicitargs.xml | 23 +++
> .../bhyvexml2argvdata/bhyvexml2argv-console.ldargs | 1 +
> .../bhyvexml2argv-custom-loader.args | 3 +
> .../bhyvexml2argv-custom-loader.ldargs | 1 +
> .../bhyvexml2argv-custom-loader.xml | 24 +++
> .../bhyvexml2argv-disk-cdrom-grub.args | 3 +
> .../bhyvexml2argv-disk-cdrom-grub.devmap | 1 +
> .../bhyvexml2argv-disk-cdrom-grub.ldargs | 2 +
> .../bhyvexml2argv-disk-cdrom-grub.xml | 23 +++
> .../bhyvexml2argv-disk-cdrom.ldargs | 1 +
> .../bhyvexml2argv-disk-virtio.ldargs | 1 +
> .../bhyvexml2argv-grub-defaults.args | 3 +
> .../bhyvexml2argv-grub-defaults.devmap | 1 +
> .../bhyvexml2argv-grub-defaults.ldargs | 2 +
> .../bhyvexml2argv-grub-defaults.xml | 23 +++
> .../bhyvexml2argvdata/bhyvexml2argv-macaddr.ldargs | 1 +
> .../bhyvexml2argv-serial-grub-nocons.args | 4 +
> .../bhyvexml2argv-serial-grub-nocons.devmap | 1 +
> .../bhyvexml2argv-serial-grub-nocons.ldargs | 2 +
> .../bhyvexml2argv-serial-grub-nocons.xml | 26 +++
> .../bhyvexml2argv-serial-grub.args | 4 +
> .../bhyvexml2argv-serial-grub.devmap | 1 +
> .../bhyvexml2argv-serial-grub.ldargs | 2 +
> .../bhyvexml2argv-serial-grub.xml | 26 +++
> .../bhyvexml2argvdata/bhyvexml2argv-serial.ldargs | 1 +
> tests/bhyvexml2argvtest.c | 71 +++++++-
> 41 files changed, 631 insertions(+), 39 deletions(-)
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-acpiapic.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-base.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-bhyveload-explicitargs.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-bhyveload-explicitargs.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-bhyveload-explicitargs.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-console.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-custom-loader.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-custom-loader.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-custom-loader.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-disk-cdrom-grub.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-disk-cdrom-grub.devmap
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-disk-cdrom-grub.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-disk-cdrom-grub.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-disk-cdrom.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-disk-virtio.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-grub-defaults.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-grub-defaults.devmap
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-grub-defaults.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-grub-defaults.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-macaddr.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub-nocons.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub-nocons.devmap
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub-nocons.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub-nocons.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub.devmap
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-grub.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial.ldargs
>
Looking good. Basically ACK to the patches. BUT, please post a follow-up
patches to 1/7 and 5/7 (as reply to individual patches or cover letter
ideally). I don't want to make you to send another version. I'll merge
the patches then.
Michal
More information about the libvir-list
mailing list