First-time libvirt contributor here. Apologies if I've made beginner mistakes,
etc. If something needs fixing, please let me know and I'll try and take care
of it expediently.
First, the bhyve driver expected and assumed an OS type of 'hvm'. I think this
was incorrect. Bhyve does not provide a BIOS API and instead uses a host
bootloader to paravirtualize guests.
This patch changes the OS type Bhyve expects to 'xen' and updates tests to
match.
Second, drvbhyve hardcodes bhyveload(8) as the host bootloader for guests.
bhyveload(8) loader only supports FreeBSD guests.
This patch adds <bootloader> and <bootloader_args> handling to bhyve_command,
so libvirt can boot non-FreeBSD guests in Bhyve.
See patch logs for further details.
Thanks,
Conrad
Conrad Meyer (2):
bhyve: Support /domain/bootloader configuration for non-FreeBSD
guests.
Generated PO files for 'bhyve: Support /domain/bootloader'
docs/drvbhyve.html.in | 30 +++++-
docs/formatdomain.html.in | 4 +-
po/af.po | 4 +
po/am.po | 4 +
po/ar.po | 4 +
po/as.po | 4 +
po/be.po | 4 +
po/bg.po | 4 +
po/bn.po | 4 +
po/bn_IN.po | 4 +
po/bo.po | 4 +
po/bs.po | 4 +
po/ca.po | 4 +
po/cs.po | 4 +
po/cy.po | 4 +
po/da.po | 4 +
po/de.po | 4 +
po/el.po | 4 +
po/en_GB.po | 4 +
po/es.po | 4 +
po/et.po | 4 +
po/eu_ES.po | 4 +
po/fa.po | 4 +
po/fi.po | 4 +
po/fr.po | 4 +
po/gl.po | 4 +
po/gu.po | 4 +
po/he.po | 4 +
po/hi.po | 4 +
po/hr.po | 4 +
po/hu.po | 4 +
po/hy.po | 4 +
po/id.po | 4 +
po/is.po | 4 +
po/it.po | 4 +
po/ja.po | 4 +
po/ka.po | 4 +
po/kn.po | 4 +
po/ko.po | 4 +
po/ku.po | 4 +
po/libvirt.pot | 4 +
po/lo.po | 4 +
po/lt.po | 4 +
po/lv.po | 4 +
po/mk.po | 4 +
po/ml.po | 4 +
po/mr.po | 4 +
po/ms.po | 4 +
po/my.po | 4 +
po/nb.po | 4 +
po/nl.po | 4 +
po/nn.po | 4 +
po/nso.po | 4 +
po/or.po | 4 +
po/pa.po | 4 +
po/pl.po | 4 +
po/pt.po | 4 +
po/pt_BR.po | 4 +
po/ro.po | 4 +
po/ru.po | 4 +
po/si.po | 4 +
po/sk.po | 4 +
po/sl.po | 4 +
po/sq.po | 4 +
po/sr.po | 4 +
po/sr(a)latin.po | 4 +
po/sv.po | 4 +
po/ta.po | 4 +
po/te.po | 4 +
po/th.po | 4 +
po/tr.po | 4 +
po/uk.po | 4 +
po/ur.po | 4 +
po/vi.po | 4 +
po/vi_VN.po | 4 +
po/zh_CN.po | 4 +
po/zh_TW.po | 4 +
po/zu.po | 4 +
src/bhyve/bhyve_capabilities.c | 2 +-
src/bhyve/bhyve_command.c | 107 +++++++++++++++++++--
tests/bhyvexml2argvdata/bhyvexml2argv-acpiapic.xml | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-base.xml | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-console.xml | 2 +-
.../bhyvexml2argvdata/bhyvexml2argv-disk-cdrom.xml | 2 +-
.../bhyvexml2argv-disk-virtio.xml | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-macaddr.xml | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-metadata.xml | 2 +-
tests/bhyvexml2argvdata/bhyvexml2argv-serial.xml | 2 +-
.../bhyvexml2xmlout-metadata.xml | 2 +-
89 files changed, 439 insertions(+), 26 deletions(-)
--
1.9.3