[libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Jonathon Jongsma posted 12 patches 3 weeks ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20200618210605.12308-1-jjongsma@redhat.com
NEWS.rst                                      |   7 +
build-aux/syntax-check.mk                     |   2 +-
docs/formatnode.html.in                       |  21 +-
docs/schemas/nodedev.rng                      |  18 +-
libvirt.spec.in                               |   2 +
m4/virt-external-programs.m4                  |   3 +
src/conf/node_device_conf.c                   |  68 +++-
src/conf/node_device_conf.h                   |   3 +
src/conf/virnodedeviceobj.c                   |  34 ++
src/conf/virnodedeviceobj.h                   |   3 +
src/libvirt_private.syms                      |   3 +
src/node_device/Makefile.inc.am               |  23 +-
src/node_device/node_device_driver.c          | 360 ++++++++++++++++--
src/node_device/node_device_driver.h          |   7 +
src/node_device/node_device_udev.c            |   5 +-
src/util/virmdev.c                            |  12 +
src/util/virmdev.h                            |  11 +
tests/Makefile.am                             |  15 +
...019_36ea_4111_8f0a_8c9a70e21366-start.argv |   1 +
...019_36ea_4111_8f0a_8c9a70e21366-start.json |   1 +
...d39_495e_4243_ad9f_beb3f14c23d9-start.argv |   1 +
...d39_495e_4243_ad9f_beb3f14c23d9-start.json |   1 +
...916_1ca8_49ac_b176_871d16c13076-start.argv |   1 +
...916_1ca8_49ac_b176_871d16c13076-start.json |   1 +
tests/nodedevmdevctldata/mdevctl-stop.argv    |   1 +
tests/nodedevmdevctltest.c                    | 303 +++++++++++++++
...v_d069d019_36ea_4111_8f0a_8c9a70e21366.xml |   7 +
...v_d2441d39_495e_4243_ad9f_beb3f14c23d9.xml |   9 +
...v_fedc4916_1ca8_49ac_b176_871d16c13076.xml |   8 +
29 files changed, 863 insertions(+), 68 deletions(-)
create mode 100644 tests/nodedevmdevctldata/mdev_d069d019_36ea_4111_8f0a_8c9a70e21366-start.argv
create mode 100644 tests/nodedevmdevctldata/mdev_d069d019_36ea_4111_8f0a_8c9a70e21366-start.json
create mode 100644 tests/nodedevmdevctldata/mdev_d2441d39_495e_4243_ad9f_beb3f14c23d9-start.argv
create mode 100644 tests/nodedevmdevctldata/mdev_d2441d39_495e_4243_ad9f_beb3f14c23d9-start.json
create mode 100644 tests/nodedevmdevctldata/mdev_fedc4916_1ca8_49ac_b176_871d16c13076-start.argv
create mode 100644 tests/nodedevmdevctldata/mdev_fedc4916_1ca8_49ac_b176_871d16c13076-start.json
create mode 100644 tests/nodedevmdevctldata/mdevctl-stop.argv
create mode 100644 tests/nodedevmdevctltest.c
create mode 100644 tests/nodedevschemadata/mdev_d069d019_36ea_4111_8f0a_8c9a70e21366.xml
create mode 100644 tests/nodedevschemadata/mdev_d2441d39_495e_4243_ad9f_beb3f14c23d9.xml
create mode 100644 tests/nodedevschemadata/mdev_fedc4916_1ca8_49ac_b176_871d16c13076.xml

[libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Posted by Jonathon Jongsma 3 weeks ago
This is the first portion of an effort to support persistent mediated devices
with libvirt. This first series simply enables creating and destroying
non-persistent mediated devices via the virNodeDeviceCreateXML() and
virNodeDeviceDestroy() functions. The 'mdevctl' utility[1] provides the backend
implementation.

Hopefully these are the last changes and version can simply be pushed upstream.

Changes in v4:
 - coding style / spacing fixes
 - remove 'persist' arg from start command
 - fixed distcheck failure by including test data dir in EXTRA_DIST
 - Add an item to NEWS.rst

[1] https://github.com/mdevctl/mdevctl

Jonathon Jongsma (12):
  nodedev: make iommuGroup optional for mdevs
  nodedev: factor out nodeDeviceHasCapability()
  nodedev: add support for mdev attributes
  nodedev: refactor nodeDeviceFindNewDevice()
  nodedev: store mdev UUID in mdev caps
  nodedev: add mdev support to virNodeDeviceCreateXML()
  nodedev: Build a non-loadable driver lib
  nodedev: Add testing for 'mdevctl start'
  nodedev: add mdev support to virNodeDeviceDestroy()
  nodedev: Add testing for 'mdevctl stop'
  docs: note node device fields that are read-only
  news: mediated devices can be created

 NEWS.rst                                      |   7 +
 build-aux/syntax-check.mk                     |   2 +-
 docs/formatnode.html.in                       |  21 +-
 docs/schemas/nodedev.rng                      |  18 +-
 libvirt.spec.in                               |   2 +
 m4/virt-external-programs.m4                  |   3 +
 src/conf/node_device_conf.c                   |  68 +++-
 src/conf/node_device_conf.h                   |   3 +
 src/conf/virnodedeviceobj.c                   |  34 ++
 src/conf/virnodedeviceobj.h                   |   3 +
 src/libvirt_private.syms                      |   3 +
 src/node_device/Makefile.inc.am               |  23 +-
 src/node_device/node_device_driver.c          | 360 ++++++++++++++++--
 src/node_device/node_device_driver.h          |   7 +
 src/node_device/node_device_udev.c            |   5 +-
 src/util/virmdev.c                            |  12 +
 src/util/virmdev.h                            |  11 +
 tests/Makefile.am                             |  15 +
 ...019_36ea_4111_8f0a_8c9a70e21366-start.argv |   1 +
 ...019_36ea_4111_8f0a_8c9a70e21366-start.json |   1 +
 ...d39_495e_4243_ad9f_beb3f14c23d9-start.argv |   1 +
 ...d39_495e_4243_ad9f_beb3f14c23d9-start.json |   1 +
 ...916_1ca8_49ac_b176_871d16c13076-start.argv |   1 +
 ...916_1ca8_49ac_b176_871d16c13076-start.json |   1 +
 tests/nodedevmdevctldata/mdevctl-stop.argv    |   1 +
 tests/nodedevmdevctltest.c                    | 303 +++++++++++++++
 ...v_d069d019_36ea_4111_8f0a_8c9a70e21366.xml |   7 +
 ...v_d2441d39_495e_4243_ad9f_beb3f14c23d9.xml |   9 +
 ...v_fedc4916_1ca8_49ac_b176_871d16c13076.xml |   8 +
 29 files changed, 863 insertions(+), 68 deletions(-)
 create mode 100644 tests/nodedevmdevctldata/mdev_d069d019_36ea_4111_8f0a_8c9a70e21366-start.argv
 create mode 100644 tests/nodedevmdevctldata/mdev_d069d019_36ea_4111_8f0a_8c9a70e21366-start.json
 create mode 100644 tests/nodedevmdevctldata/mdev_d2441d39_495e_4243_ad9f_beb3f14c23d9-start.argv
 create mode 100644 tests/nodedevmdevctldata/mdev_d2441d39_495e_4243_ad9f_beb3f14c23d9-start.json
 create mode 100644 tests/nodedevmdevctldata/mdev_fedc4916_1ca8_49ac_b176_871d16c13076-start.argv
 create mode 100644 tests/nodedevmdevctldata/mdev_fedc4916_1ca8_49ac_b176_871d16c13076-start.json
 create mode 100644 tests/nodedevmdevctldata/mdevctl-stop.argv
 create mode 100644 tests/nodedevmdevctltest.c
 create mode 100644 tests/nodedevschemadata/mdev_d069d019_36ea_4111_8f0a_8c9a70e21366.xml
 create mode 100644 tests/nodedevschemadata/mdev_d2441d39_495e_4243_ad9f_beb3f14c23d9.xml
 create mode 100644 tests/nodedevschemadata/mdev_fedc4916_1ca8_49ac_b176_871d16c13076.xml

-- 
2.21.3

Re: [libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Posted by Erik Skultety 2 weeks ago
On Thu, Jun 18, 2020 at 04:05:53PM -0500, Jonathon Jongsma wrote:
> This is the first portion of an effort to support persistent mediated devices
> with libvirt. This first series simply enables creating and destroying
> non-persistent mediated devices via the virNodeDeviceCreateXML() and
> virNodeDeviceDestroy() functions. The 'mdevctl' utility[1] provides the backend
> implementation.
>
> Hopefully these are the last changes and version can simply be pushed upstream.
>
> Changes in v4:
>  - coding style / spacing fixes
>  - remove 'persist' arg from start command
>  - fixed distcheck failure by including test data dir in EXTRA_DIST
>  - Add an item to NEWS.rst
>
> [1] https://github.com/mdevctl/mdevctl
>

I'll give Michal a chance to have a final look before I push this.
Good work.

Series:
Reviewed-by: Erik Skultety <eskultet@redhat.com>

Regards,
Erik

Re: [libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Posted by Michal Privoznik 2 weeks ago
On 6/19/20 9:22 AM, Erik Skultety wrote:
> On Thu, Jun 18, 2020 at 04:05:53PM -0500, Jonathon Jongsma wrote:
>> This is the first portion of an effort to support persistent mediated devices
>> with libvirt. This first series simply enables creating and destroying
>> non-persistent mediated devices via the virNodeDeviceCreateXML() and
>> virNodeDeviceDestroy() functions. The 'mdevctl' utility[1] provides the backend
>> implementation.
>>
>> Hopefully these are the last changes and version can simply be pushed upstream.
>>
>> Changes in v4:
>>   - coding style / spacing fixes
>>   - remove 'persist' arg from start command
>>   - fixed distcheck failure by including test data dir in EXTRA_DIST
>>   - Add an item to NEWS.rst
>>
>> [1] https://github.com/mdevctl/mdevctl
>>
> 
> I'll give Michal a chance to have a final look before I push this.
> Good work.
> 
> Series:
> Reviewed-by: Erik Skultety <eskultet@redhat.com>
> 

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>

Michal

Re: [libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Posted by Daniel P. Berrangé 2 weeks ago
On Fri, Jun 19, 2020 at 10:35:12AM +0200, Michal Privoznik wrote:
> On 6/19/20 9:22 AM, Erik Skultety wrote:
> > On Thu, Jun 18, 2020 at 04:05:53PM -0500, Jonathon Jongsma wrote:
> > > This is the first portion of an effort to support persistent mediated devices
> > > with libvirt. This first series simply enables creating and destroying
> > > non-persistent mediated devices via the virNodeDeviceCreateXML() and
> > > virNodeDeviceDestroy() functions. The 'mdevctl' utility[1] provides the backend
> > > implementation.
> > > 
> > > Hopefully these are the last changes and version can simply be pushed upstream.
> > > 
> > > Changes in v4:
> > >   - coding style / spacing fixes
> > >   - remove 'persist' arg from start command
> > >   - fixed distcheck failure by including test data dir in EXTRA_DIST
> > >   - Add an item to NEWS.rst
> > > 
> > > [1] https://github.com/mdevctl/mdevctl
> > > 
> > 
> > I'll give Michal a chance to have a final look before I push this.
> > Good work.
> > 
> > Series:
> > Reviewed-by: Erik Skultety <eskultet@redhat.com>
> > 
> 
> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>

This appears to have broken the build because the nodedev driver so file
has gained a bogus version number

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

Re: [libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Posted by Jonathon Jongsma 2 weeks ago
On Fri, 2020-06-19 at 12:06 +0100, Daniel P. Berrangé wrote:
> On Fri, Jun 19, 2020 at 10:35:12AM +0200, Michal Privoznik wrote:
> > On 6/19/20 9:22 AM, Erik Skultety wrote:
> > > On Thu, Jun 18, 2020 at 04:05:53PM -0500, Jonathon Jongsma wrote:
> > > > This is the first portion of an effort to support persistent
> > > > mediated devices
> > > > with libvirt. This first series simply enables creating and
> > > > destroying
> > > > non-persistent mediated devices via the
> > > > virNodeDeviceCreateXML() and
> > > > virNodeDeviceDestroy() functions. The 'mdevctl' utility[1]
> > > > provides the backend
> > > > implementation.
> > > > 
> > > > Hopefully these are the last changes and version can simply be
> > > > pushed upstream.
> > > > 
> > > > Changes in v4:
> > > >   - coding style / spacing fixes
> > > >   - remove 'persist' arg from start command
> > > >   - fixed distcheck failure by including test data dir in
> > > > EXTRA_DIST
> > > >   - Add an item to NEWS.rst
> > > > 
> > > > [1] https://github.com/mdevctl/mdevctl
> > > > 
> > > 
> > > I'll give Michal a chance to have a final look before I push
> > > this.
> > > Good work.
> > > 
> > > Series:
> > > Reviewed-by: Erik Skultety <eskultet@redhat.com>
> > > 
> > 
> > Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
> 
> This appears to have broken the build because the nodedev driver so
> file
> has gained a bogus version number
> 
> Regards,
> Daniel


Can you provide more information here? I have not seen any build
failures. Where are you seeing it? Local builds? CI? 

Jonathon

Re: [libvirt PATCH v4 00/12] Add ability to create mediated devices in libvirt

Posted by Michal Privoznik 2 weeks ago
On 6/19/20 4:12 PM, Jonathon Jongsma wrote:
> On Fri, 2020-06-19 at 12:06 +0100, Daniel P. Berrangé wrote:
>> On Fri, Jun 19, 2020 at 10:35:12AM +0200, Michal Privoznik wrote:
>>> On 6/19/20 9:22 AM, Erik Skultety wrote:
>>>> On Thu, Jun 18, 2020 at 04:05:53PM -0500, Jonathon Jongsma wrote:
>>>>> This is the first portion of an effort to support persistent
>>>>> mediated devices
>>>>> with libvirt. This first series simply enables creating and
>>>>> destroying
>>>>> non-persistent mediated devices via the
>>>>> virNodeDeviceCreateXML() and
>>>>> virNodeDeviceDestroy() functions. The 'mdevctl' utility[1]
>>>>> provides the backend
>>>>> implementation.
>>>>>
>>>>> Hopefully these are the last changes and version can simply be
>>>>> pushed upstream.
>>>>>
>>>>> Changes in v4:
>>>>>    - coding style / spacing fixes
>>>>>    - remove 'persist' arg from start command
>>>>>    - fixed distcheck failure by including test data dir in
>>>>> EXTRA_DIST
>>>>>    - Add an item to NEWS.rst
>>>>>
>>>>> [1] https://github.com/mdevctl/mdevctl
>>>>>
>>>>
>>>> I'll give Michal a chance to have a final look before I push
>>>> this.
>>>> Good work.
>>>>
>>>> Series:
>>>> Reviewed-by: Erik Skultety <eskultet@redhat.com>
>>>>
>>>
>>> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
>>
>> This appears to have broken the build because the nodedev driver so
>> file
>> has gained a bogus version number
>>
>> Regards,
>> Daniel
> 
> 
> Can you provide more information here? I have not seen any build
> failures. Where are you seeing it? Local builds? CI?
> 
> Jonathon
> 

It's fixed here:

https://www.redhat.com/archives/libvir-list/2020-June/msg00886.html

Michal