On 06/19/2017 10:56 AM, Roman Bogorodskiy wrote:
> Add support for vgaconf driver configuration. In domain xml it looks like
> this:
>
> <video>
> <driver vgaconf='io|on|off'>
> <model .../>
> </video>
>
> It was added with bhyve gop video in mind to allow users control how the
> video device is exposed to the guest, specifically, how VGA I/O is
> handled.
>
> One can refer to the bhyve manual page to get more detailed description
> of the possible VGA configuration options:
>
>
https://www.freebsd.org/cgi/man.cgi?query=bhyve&manpath=FreeBSD+12-cu...
>
> The relevant part could be found using the 'vgaconf' keyword.
>
> Also, add some tests for this new feature.
>
> Signed-off-by: Roman Bogorodskiy <bogorodskiy(a)gmail.com>
> ---
> Changes from v1:
>
> * Rebased on top of current master. Specifically, the most important bit
> was merging with f5384fb4 which has added video/driver element
> * In conjunction with f5384fb4 use video/driver element instead of
> video/model/driver
> * Squash in conf and bhyve patches to make it easier to understand how
> it's used
> * Rename *Vgaconf* to *VGAConf*
> * Add a little more tests
>
> Changes from v2:
>
> * Add option description to formatdomain.html.in
>
> docs/formatdomain.html.in | 9 +++-
> docs/schemas/domaincommon.rng | 13 ++++-
> src/bhyve/bhyve_command.c | 4 ++
> src/conf/domain_conf.c | 57 ++++++++++++++++++++--
> src/conf/domain_conf.h | 17 +++++++
> src/libvirt_private.syms | 2 +
> .../bhyvexml2argv-vnc-vgaconf-io.args | 12 +++++
> .../bhyvexml2argv-vnc-vgaconf-io.ldargs | 1 +
> .../bhyvexml2argv-vnc-vgaconf-io.xml | 30 ++++++++++++
> .../bhyvexml2argv-vnc-vgaconf-off.args | 12 +++++
> .../bhyvexml2argv-vnc-vgaconf-off.ldargs | 1 +
> .../bhyvexml2argv-vnc-vgaconf-off.xml | 30 ++++++++++++
> .../bhyvexml2argv-vnc-vgaconf-on.args | 12 +++++
> .../bhyvexml2argv-vnc-vgaconf-on.ldargs | 1 +
> .../bhyvexml2argv-vnc-vgaconf-on.xml | 30 ++++++++++++
> tests/bhyvexml2argvtest.c | 3 ++
> .../bhyvexml2xmlout-vnc-vgaconf-io.xml | 41 ++++++++++++++++
> .../bhyvexml2xmlout-vnc-vgaconf-off.xml | 42 ++++++++++++++++
> .../bhyvexml2xmlout-vnc-vgaconf-on.xml | 42 ++++++++++++++++
> tests/bhyvexml2xmltest.c | 3 ++
> 20 files changed, 356 insertions(+), 6 deletions(-)
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-io.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-io.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-io.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-off.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-off.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-off.xml
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-on.args
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-on.ldargs
> create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-vnc-vgaconf-on.xml
> create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-vnc-vgaconf-io.xml
> create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-vnc-vgaconf-off.xml
> create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-vnc-vgaconf-on.xml
>
Reviewed-by: John Ferlan <jferlan(a)redhat.com>
John