[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCHv8 0/7] Add non-FreeBSD guest support to Bhyve driver.



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


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]