[libvirt] [PATCH v3 REBASE 00/12] hostdev: handle usb detach/attach on node

Nikolay Shirokovskiy posted 12 patches 4 years, 6 months ago
Test syntax-check passed
Failed in applying to current master (apply log)
docs/formatdomain.html.in                     |  10 +-
docs/schemas/domaincommon.rng                 |   5 +
src/conf/domain_conf.c                        |  62 +++
src/conf/domain_conf.h                        |  17 +
src/qemu/Makefile.inc.am                      |   2 +
src/qemu/qemu_conf.h                          |   3 +
src/qemu/qemu_domain.c                        |   2 +
src/qemu/qemu_domain.h                        |   2 +
src/qemu/qemu_driver.c                        | 404 +++++++++++++++++-
src/qemu/qemu_hotplug.c                       | 104 ++++-
src/qemu/qemu_hotplug.h                       |   3 +-
src/qemu/qemu_process.c                       |  60 +++
src/util/virhostdev.c                         |   2 +
tests/qemuhotplugtest.c                       |   2 +-
tests/qemuxml2argvdata/hostdev-usb-replug.xml |  36 ++
.../qemuxml2xmloutdata/hostdev-usb-replug.xml |  40 ++
tests/qemuxml2xmltest.c                       |   1 +
17 files changed, 733 insertions(+), 22 deletions(-)
create mode 100644 tests/qemuxml2argvdata/hostdev-usb-replug.xml
create mode 100644 tests/qemuxml2xmloutdata/hostdev-usb-replug.xml
[libvirt] [PATCH v3 REBASE 00/12] hostdev: handle usb detach/attach on node
Posted by Nikolay Shirokovskiy 4 years, 6 months ago
Diff to v2[1] version:
- add 'replug' attribute for hostdev element to allow replug semantics
- avoid accuiring domain lock in event loop thread on udev events as
  suggested by Peter
- nit picks after review by Daniel Henrique Barboza

* is used to mark patches that were 'Reviewed-by' by Daniel (sometimes
  with very minor changes to take into account new replug flag).

[1] https://www.redhat.com/archives/libvir-list/2019-September/msg00321.html

Nikolay Shirokovskiy (12):
  conf: add replug option for usb hostdev
  qemu: track hostdev delete intention
  qemu: support host usb device unplug
  qemu: support usb hostdev plugging back
  qemu: handle host usb device add/del udev events
  qemu: handle libvirtd restart after host usb device unplug
  qemu: handle race on device deletion and usb host device plugging
  qemu: hotplug: update device list on device deleted event
  qemu: handle host usb device plug/unplug when libvirtd is down
  qemu: don't mess with non mandatory hostdevs on reattaching
  qemu: handle detaching of unplugged hostdev
  conf: parse hostdev missing flag

 docs/formatdomain.html.in                     |  10 +-
 docs/schemas/domaincommon.rng                 |   5 +
 src/conf/domain_conf.c                        |  62 +++
 src/conf/domain_conf.h                        |  17 +
 src/qemu/Makefile.inc.am                      |   2 +
 src/qemu/qemu_conf.h                          |   3 +
 src/qemu/qemu_domain.c                        |   2 +
 src/qemu/qemu_domain.h                        |   2 +
 src/qemu/qemu_driver.c                        | 404 +++++++++++++++++-
 src/qemu/qemu_hotplug.c                       | 104 ++++-
 src/qemu/qemu_hotplug.h                       |   3 +-
 src/qemu/qemu_process.c                       |  60 +++
 src/util/virhostdev.c                         |   2 +
 tests/qemuhotplugtest.c                       |   2 +-
 tests/qemuxml2argvdata/hostdev-usb-replug.xml |  36 ++
 .../qemuxml2xmloutdata/hostdev-usb-replug.xml |  40 ++
 tests/qemuxml2xmltest.c                       |   1 +
 17 files changed, 733 insertions(+), 22 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/hostdev-usb-replug.xml
 create mode 100644 tests/qemuxml2xmloutdata/hostdev-usb-replug.xml

-- 
2.23.0

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v3 REBASE 00/12] hostdev: handle usb detach/attach on node
Posted by Nikolay Shirokovskiy 4 years, 5 months ago
ping (hmm, looks like packets are silintely get dropped :) )

On 15.10.2019 17:29, Nikolay Shirokovskiy wrote:
> Diff to v2[1] version:
> - add 'replug' attribute for hostdev element to allow replug semantics
> - avoid accuiring domain lock in event loop thread on udev events as
>   suggested by Peter
> - nit picks after review by Daniel Henrique Barboza
> 
> * is used to mark patches that were 'Reviewed-by' by Daniel (sometimes
>   with very minor changes to take into account new replug flag).
> 
> [1] https://www.redhat.com/archives/libvir-list/2019-September/msg00321.html
> 
> Nikolay Shirokovskiy (12):
>   conf: add replug option for usb hostdev
>   qemu: track hostdev delete intention
>   qemu: support host usb device unplug
>   qemu: support usb hostdev plugging back
>   qemu: handle host usb device add/del udev events
>   qemu: handle libvirtd restart after host usb device unplug
>   qemu: handle race on device deletion and usb host device plugging
>   qemu: hotplug: update device list on device deleted event
>   qemu: handle host usb device plug/unplug when libvirtd is down
>   qemu: don't mess with non mandatory hostdevs on reattaching
>   qemu: handle detaching of unplugged hostdev
>   conf: parse hostdev missing flag
> 
>  docs/formatdomain.html.in                     |  10 +-
>  docs/schemas/domaincommon.rng                 |   5 +
>  src/conf/domain_conf.c                        |  62 +++
>  src/conf/domain_conf.h                        |  17 +
>  src/qemu/Makefile.inc.am                      |   2 +
>  src/qemu/qemu_conf.h                          |   3 +
>  src/qemu/qemu_domain.c                        |   2 +
>  src/qemu/qemu_domain.h                        |   2 +
>  src/qemu/qemu_driver.c                        | 404 +++++++++++++++++-
>  src/qemu/qemu_hotplug.c                       | 104 ++++-
>  src/qemu/qemu_hotplug.h                       |   3 +-
>  src/qemu/qemu_process.c                       |  60 +++
>  src/util/virhostdev.c                         |   2 +
>  tests/qemuhotplugtest.c                       |   2 +-
>  tests/qemuxml2argvdata/hostdev-usb-replug.xml |  36 ++
>  .../qemuxml2xmloutdata/hostdev-usb-replug.xml |  40 ++
>  tests/qemuxml2xmltest.c                       |   1 +
>  17 files changed, 733 insertions(+), 22 deletions(-)
>  create mode 100644 tests/qemuxml2argvdata/hostdev-usb-replug.xml
>  create mode 100644 tests/qemuxml2xmloutdata/hostdev-usb-replug.xml
> 

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Re: [libvirt] [PATCH v3 REBASE 00/12] hostdev: handle usb detach/attach on node
Posted by Dave Allan 4 years, 5 months ago
Hi Nikolay,

I tried to apply these patches both to the current git head and also the git head as of Oct 15 when you posted them, and neither applied cleanly.  Can you confirm that they apply cleanly for you to the current tree?

Thanks,
Dave


On Mon, Oct 28, 2019 at 08:43:55AM +0000, Nikolay Shirokovskiy wrote:
>ping (hmm, looks like packets are silintely get dropped :) )
>
>On 15.10.2019 17:29, Nikolay Shirokovskiy wrote:
>> Diff to v2[1] version:
>> - add 'replug' attribute for hostdev element to allow replug semantics
>> - avoid accuiring domain lock in event loop thread on udev events as
>>   suggested by Peter
>> - nit picks after review by Daniel Henrique Barboza
>>
>> * is used to mark patches that were 'Reviewed-by' by Daniel (sometimes
>>   with very minor changes to take into account new replug flag).
>>
>> [1] https://www.redhat.com/archives/libvir-list/2019-September/msg00321.html
>>
>> Nikolay Shirokovskiy (12):
>>   conf: add replug option for usb hostdev
>>   qemu: track hostdev delete intention
>>   qemu: support host usb device unplug
>>   qemu: support usb hostdev plugging back
>>   qemu: handle host usb device add/del udev events
>>   qemu: handle libvirtd restart after host usb device unplug
>>   qemu: handle race on device deletion and usb host device plugging
>>   qemu: hotplug: update device list on device deleted event
>>   qemu: handle host usb device plug/unplug when libvirtd is down
>>   qemu: don't mess with non mandatory hostdevs on reattaching
>>   qemu: handle detaching of unplugged hostdev
>>   conf: parse hostdev missing flag
>>
>>  docs/formatdomain.html.in                     |  10 +-
>>  docs/schemas/domaincommon.rng                 |   5 +
>>  src/conf/domain_conf.c                        |  62 +++
>>  src/conf/domain_conf.h                        |  17 +
>>  src/qemu/Makefile.inc.am                      |   2 +
>>  src/qemu/qemu_conf.h                          |   3 +
>>  src/qemu/qemu_domain.c                        |   2 +
>>  src/qemu/qemu_domain.h                        |   2 +
>>  src/qemu/qemu_driver.c                        | 404 +++++++++++++++++-
>>  src/qemu/qemu_hotplug.c                       | 104 ++++-
>>  src/qemu/qemu_hotplug.h                       |   3 +-
>>  src/qemu/qemu_process.c                       |  60 +++
>>  src/util/virhostdev.c                         |   2 +
>>  tests/qemuhotplugtest.c                       |   2 +-
>>  tests/qemuxml2argvdata/hostdev-usb-replug.xml |  36 ++
>>  .../qemuxml2xmloutdata/hostdev-usb-replug.xml |  40 ++
>>  tests/qemuxml2xmltest.c                       |   1 +
>>  17 files changed, 733 insertions(+), 22 deletions(-)
>>  create mode 100644 tests/qemuxml2argvdata/hostdev-usb-replug.xml
>>  create mode 100644 tests/qemuxml2xmloutdata/hostdev-usb-replug.xml
>>
>
>--
>libvir-list mailing list
>libvir-list@redhat.com
>https://www.redhat.com/mailman/listinfo/libvir-list
>
>

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Re: [libvirt] [PATCH v3 REBASE 00/12] hostdev: handle usb detach/attach on node
Posted by Nikolay Shirokovskiy 4 years, 5 months ago

On 28.10.2019 13:11, Dave Allan wrote:
> Hi Nikolay,
> 
> I tried to apply these patches both to the current git head and also the git head as of Oct 15 when you posted them, and neither applied cleanly.  Can you confirm that they apply cleanly for you to the current tree?
> 
> Thanks,
> Dave

Hi Dave.

I sent new rebase on current tree (there is a lot of mass refactorings while moving to glib these days...)

Nikolay

> 
> 
> On Mon, Oct 28, 2019 at 08:43:55AM +0000, Nikolay Shirokovskiy wrote:
>> ping (hmm, looks like packets are silintely get dropped :) )
>>
>> On 15.10.2019 17:29, Nikolay Shirokovskiy wrote:
>>> Diff to v2[1] version:
>>> - add 'replug' attribute for hostdev element to allow replug semantics
>>> - avoid accuiring domain lock in event loop thread on udev events as
>>>   suggested by Peter
>>> - nit picks after review by Daniel Henrique Barboza
>>>
>>> * is used to mark patches that were 'Reviewed-by' by Daniel (sometimes
>>>   with very minor changes to take into account new replug flag).
>>>
>>> [1] https://www.redhat.com/archives/libvir-list/2019-September/msg00321.html
>>>
>>> Nikolay Shirokovskiy (12):
>>>   conf: add replug option for usb hostdev
>>>   qemu: track hostdev delete intention
>>>   qemu: support host usb device unplug
>>>   qemu: support usb hostdev plugging back
>>>   qemu: handle host usb device add/del udev events
>>>   qemu: handle libvirtd restart after host usb device unplug
>>>   qemu: handle race on device deletion and usb host device plugging
>>>   qemu: hotplug: update device list on device deleted event
>>>   qemu: handle host usb device plug/unplug when libvirtd is down
>>>   qemu: don't mess with non mandatory hostdevs on reattaching
>>>   qemu: handle detaching of unplugged hostdev
>>>   conf: parse hostdev missing flag
>>>
>>>  docs/formatdomain.html.in                     |  10 +-
>>>  docs/schemas/domaincommon.rng                 |   5 +
>>>  src/conf/domain_conf.c                        |  62 +++
>>>  src/conf/domain_conf.h                        |  17 +
>>>  src/qemu/Makefile.inc.am                      |   2 +
>>>  src/qemu/qemu_conf.h                          |   3 +
>>>  src/qemu/qemu_domain.c                        |   2 +
>>>  src/qemu/qemu_domain.h                        |   2 +
>>>  src/qemu/qemu_driver.c                        | 404 +++++++++++++++++-
>>>  src/qemu/qemu_hotplug.c                       | 104 ++++-
>>>  src/qemu/qemu_hotplug.h                       |   3 +-
>>>  src/qemu/qemu_process.c                       |  60 +++
>>>  src/util/virhostdev.c                         |   2 +
>>>  tests/qemuhotplugtest.c                       |   2 +-
>>>  tests/qemuxml2argvdata/hostdev-usb-replug.xml |  36 ++
>>>  .../qemuxml2xmloutdata/hostdev-usb-replug.xml |  40 ++
>>>  tests/qemuxml2xmltest.c                       |   1 +
>>>  17 files changed, 733 insertions(+), 22 deletions(-)
>>>  create mode 100644 tests/qemuxml2argvdata/hostdev-usb-replug.xml
>>>  create mode 100644 tests/qemuxml2xmloutdata/hostdev-usb-replug.xml
>>>
>>
>> -- 
>> libvir-list mailing list
>> libvir-list@redhat.com
>> https://www.redhat.com/mailman/listinfo/libvir-list
>>
>>

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v3 REBASE 00/12] hostdev: handle usb detach/attach on node
Posted by Dave Allan 4 years, 5 months ago
On Tue, Oct 29, 2019 at 08:20:04AM +0000, Nikolay Shirokovskiy wrote:
>
>
>On 28.10.2019 13:11, Dave Allan wrote:
>> Hi Nikolay,
>>
>> I tried to apply these patches both to the current git head and also the git head as of Oct 15 when you posted them, and neither applied cleanly.  Can you confirm that they apply cleanly for you to the current tree?
>>
>> Thanks,
>> Dave
>
>Hi Dave.
>
>I sent new rebase on current tree (there is a lot of mass refactorings while moving to glib these days...)
>
>Nikolay

Cool, this set applies cleanly and builds.  I'll give them a test tomorrow.

>> On Mon, Oct 28, 2019 at 08:43:55AM +0000, Nikolay Shirokovskiy wrote:
>>> ping (hmm, looks like packets are silintely get dropped :) )
>>>
>>> On 15.10.2019 17:29, Nikolay Shirokovskiy wrote:
>>>> Diff to v2[1] version:
>>>> - add 'replug' attribute for hostdev element to allow replug semantics
>>>> - avoid accuiring domain lock in event loop thread on udev events as
>>>>   suggested by Peter
>>>> - nit picks after review by Daniel Henrique Barboza
>>>>
>>>> * is used to mark patches that were 'Reviewed-by' by Daniel (sometimes
>>>>   with very minor changes to take into account new replug flag).
>>>>
>>>> [1] https://www.redhat.com/archives/libvir-list/2019-September/msg00321.html
>>>>
>>>> Nikolay Shirokovskiy (12):
>>>>   conf: add replug option for usb hostdev
>>>>   qemu: track hostdev delete intention
>>>>   qemu: support host usb device unplug
>>>>   qemu: support usb hostdev plugging back
>>>>   qemu: handle host usb device add/del udev events
>>>>   qemu: handle libvirtd restart after host usb device unplug
>>>>   qemu: handle race on device deletion and usb host device plugging
>>>>   qemu: hotplug: update device list on device deleted event
>>>>   qemu: handle host usb device plug/unplug when libvirtd is down
>>>>   qemu: don't mess with non mandatory hostdevs on reattaching
>>>>   qemu: handle detaching of unplugged hostdev
>>>>   conf: parse hostdev missing flag
>>>>
>>>>  docs/formatdomain.html.in                     |  10 +-
>>>>  docs/schemas/domaincommon.rng                 |   5 +
>>>>  src/conf/domain_conf.c                        |  62 +++
>>>>  src/conf/domain_conf.h                        |  17 +
>>>>  src/qemu/Makefile.inc.am                      |   2 +
>>>>  src/qemu/qemu_conf.h                          |   3 +
>>>>  src/qemu/qemu_domain.c                        |   2 +
>>>>  src/qemu/qemu_domain.h                        |   2 +
>>>>  src/qemu/qemu_driver.c                        | 404 +++++++++++++++++-
>>>>  src/qemu/qemu_hotplug.c                       | 104 ++++-
>>>>  src/qemu/qemu_hotplug.h                       |   3 +-
>>>>  src/qemu/qemu_process.c                       |  60 +++
>>>>  src/util/virhostdev.c                         |   2 +
>>>>  tests/qemuhotplugtest.c                       |   2 +-
>>>>  tests/qemuxml2argvdata/hostdev-usb-replug.xml |  36 ++
>>>>  .../qemuxml2xmloutdata/hostdev-usb-replug.xml |  40 ++
>>>>  tests/qemuxml2xmltest.c                       |   1 +
>>>>  17 files changed, 733 insertions(+), 22 deletions(-)
>>>>  create mode 100644 tests/qemuxml2argvdata/hostdev-usb-replug.xml
>>>>  create mode 100644 tests/qemuxml2xmloutdata/hostdev-usb-replug.xml
>>>>
>>>
>>> --
>>> libvir-list mailing list
>>> libvir-list@redhat.com
>>> https://www.redhat.com/mailman/listinfo/libvir-list
>>>
>>>
>
>--
>libvir-list mailing list
>libvir-list@redhat.com
>https://www.redhat.com/mailman/listinfo/libvir-list

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list