[PATCH 00/16] Bhyve driver improvements

Ryan Moeller posted 16 patches 4 years, 2 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20200222063855.89637-1-ryan@iXsystems.com
There is a newer version of this series
docs/schemas/basictypes.rng                   |  10 +-
docs/schemas/domaincommon.rng                 |  30 ++
src/bhyve/bhyve_capabilities.c                |  14 +
src/bhyve/bhyve_capabilities.h                |   1 +
src/bhyve/bhyve_command.c                     | 285 +++++++++++++-----
src/bhyve/bhyve_command.h                     |   4 +-
src/bhyve/bhyve_driver.c                      |  67 ++--
src/bhyve/bhyve_driver.h                      |   4 +-
src/bhyve/bhyve_monitor.c                     | 165 ++++++----
src/bhyve/bhyve_monitor.h                     |   2 +
src/bhyve/bhyve_parse_command.c               | 124 ++++++--
src/bhyve/bhyve_process.c                     | 107 +++++--
src/bhyve/bhyve_process.h                     |   4 +-
src/conf/domain_audit.c                       |   5 +
src/conf/domain_conf.c                        | 131 ++++++++
src/conf/domain_conf.h                        |  29 +-
src/conf/virconftypes.h                       |   3 +
src/conf/virnetworkobj.c                      |   5 +-
src/qemu/qemu_command.c                       |   2 +
src/qemu/qemu_domain.c                        |   5 +
src/qemu/qemu_hostdev.c                       |   1 +
src/qemu/qemu_hotplug.c                       |   2 +
src/qemu/qemu_migration.c                     |   1 +
src/security/security_apparmor.c              |   1 +
src/security/security_dac.c                   |  28 ++
src/security/security_selinux.c               |   8 +
src/util/virhook.c                            |  15 +
src/util/virhook.h                            |  11 +
src/util/virpci.c                             |   4 +-
.../bhyveargv2xml-passthru.args               |   8 +
.../bhyveargv2xml-passthru.xml                |  26 ++
.../bhyveargv2xml-virtio-scsi.args            |   9 +
.../bhyveargv2xml-virtio-scsi.xml             |  20 ++
tests/bhyveargv2xmltest.c                     |   2 +
.../bhyvexml2argv-passthru.args               |  11 +
.../bhyvexml2argv-passthru.ldargs             |   1 +
.../bhyvexml2argv-passthru.xml                |  22 ++
.../bhyvexml2argv-virtio-scsi.args            |   9 +
.../bhyvexml2argv-virtio-scsi.ldargs          |   1 +
.../bhyvexml2argv-virtio-scsi.xml             |  21 ++
tests/bhyvexml2argvtest.c                     |   8 +-
.../bhyvexml2xmlout-passthru.xml              |  29 ++
.../bhyvexml2xmlout-virtio-scsi.xml           |  23 ++
tests/bhyvexml2xmltest.c                      |   2 +
44 files changed, 1041 insertions(+), 219 deletions(-)
create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-passthru.args
create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-passthru.xml
create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-virtio-scsi.args
create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-virtio-scsi.xml
create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-passthru.args
create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-passthru.ldargs
create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-passthru.xml
create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-virtio-scsi.args
create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-virtio-scsi.ldargs
create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-virtio-scsi.xml
create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-passthru.xml
create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-virtio-scsi.xml
[PATCH 00/16] Bhyve driver improvements
Posted by Ryan Moeller 4 years, 2 months ago
Ryan Moeller (16):
  Fix build errors on FreeBSD
  Simplify bhyve driver caps helpers
  Remove redundant parameter to virBhyveProcessStart()
  Fix indentation
  Eliminate rc variable
  Factor out conn
  Don't bother seeking to the end of a file opened O_APPEND
  Make bhyveMonitor a virClass
  Refactor bhyve monitor register/unregister
  Add hooks for bhyve backend
  Add reboot support for bhyve backend
  Refactor virBhyveProcessBuildBhyveCmd a bit
  Reorder slot,bus,func -> bus,slot,func in parsers
  Add hostdev handling for bhyve
  Enable booting from hostdevs with bhyve
  Allow PCI functions up to 255 for PCI ARI

 docs/schemas/basictypes.rng                   |  10 +-
 docs/schemas/domaincommon.rng                 |  30 ++
 src/bhyve/bhyve_capabilities.c                |  14 +
 src/bhyve/bhyve_capabilities.h                |   1 +
 src/bhyve/bhyve_command.c                     | 285 +++++++++++++-----
 src/bhyve/bhyve_command.h                     |   4 +-
 src/bhyve/bhyve_driver.c                      |  67 ++--
 src/bhyve/bhyve_driver.h                      |   4 +-
 src/bhyve/bhyve_monitor.c                     | 165 ++++++----
 src/bhyve/bhyve_monitor.h                     |   2 +
 src/bhyve/bhyve_parse_command.c               | 124 ++++++--
 src/bhyve/bhyve_process.c                     | 107 +++++--
 src/bhyve/bhyve_process.h                     |   4 +-
 src/conf/domain_audit.c                       |   5 +
 src/conf/domain_conf.c                        | 131 ++++++++
 src/conf/domain_conf.h                        |  29 +-
 src/conf/virconftypes.h                       |   3 +
 src/conf/virnetworkobj.c                      |   5 +-
 src/qemu/qemu_command.c                       |   2 +
 src/qemu/qemu_domain.c                        |   5 +
 src/qemu/qemu_hostdev.c                       |   1 +
 src/qemu/qemu_hotplug.c                       |   2 +
 src/qemu/qemu_migration.c                     |   1 +
 src/security/security_apparmor.c              |   1 +
 src/security/security_dac.c                   |  28 ++
 src/security/security_selinux.c               |   8 +
 src/util/virhook.c                            |  15 +
 src/util/virhook.h                            |  11 +
 src/util/virpci.c                             |   4 +-
 .../bhyveargv2xml-passthru.args               |   8 +
 .../bhyveargv2xml-passthru.xml                |  26 ++
 .../bhyveargv2xml-virtio-scsi.args            |   9 +
 .../bhyveargv2xml-virtio-scsi.xml             |  20 ++
 tests/bhyveargv2xmltest.c                     |   2 +
 .../bhyvexml2argv-passthru.args               |  11 +
 .../bhyvexml2argv-passthru.ldargs             |   1 +
 .../bhyvexml2argv-passthru.xml                |  22 ++
 .../bhyvexml2argv-virtio-scsi.args            |   9 +
 .../bhyvexml2argv-virtio-scsi.ldargs          |   1 +
 .../bhyvexml2argv-virtio-scsi.xml             |  21 ++
 tests/bhyvexml2argvtest.c                     |   8 +-
 .../bhyvexml2xmlout-passthru.xml              |  29 ++
 .../bhyvexml2xmlout-virtio-scsi.xml           |  23 ++
 tests/bhyvexml2xmltest.c                      |   2 +
 44 files changed, 1041 insertions(+), 219 deletions(-)
 create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-passthru.args
 create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-passthru.xml
 create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-virtio-scsi.args
 create mode 100644 tests/bhyveargv2xmldata/bhyveargv2xml-virtio-scsi.xml
 create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-passthru.args
 create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-passthru.ldargs
 create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-passthru.xml
 create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-virtio-scsi.args
 create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-virtio-scsi.ldargs
 create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-virtio-scsi.xml
 create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-passthru.xml
 create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-virtio-scsi.xml

-- 
2.24.1


Re: [PATCH 00/16] Bhyve driver improvements
Posted by Ján Tomko 4 years, 2 months ago
On Sat, Feb 22, 2020 at 01:38:39AM -0500, Ryan Moeller wrote:
>Ryan Moeller (16):
>  Fix build errors on FreeBSD

This one should be two patches, and more importantly, I'm curious
about the errors.

>  Simplify bhyve driver caps helpers
>  Remove redundant parameter to virBhyveProcessStart()
>  Fix indentation
>  Eliminate rc variable
>  Factor out conn

I've added a 'bhyve: ' prefix to the above five patches and pushed them

>  Don't bother seeking to the end of a file opened O_APPEND

That was surely copied and pasted from the QEMU driver, I'm curious
why it was done that way.

And the functional patches will need a look from the bhyve driver
maintainer.

Jano

>  Make bhyveMonitor a virClass
>  Refactor bhyve monitor register/unregister
>  Add hooks for bhyve backend
>  Add reboot support for bhyve backend
>  Refactor virBhyveProcessBuildBhyveCmd a bit
>  Reorder slot,bus,func -> bus,slot,func in parsers
>  Add hostdev handling for bhyve
>  Enable booting from hostdevs with bhyve
>  Allow PCI functions up to 255 for PCI ARI
>