Re: [libvirt] [PATCH 0/8] Second take on slirp-helper & dbus-vmstate

2020-02-24 Thread Marc-André Lureau
Hi

On Thu, Feb 20, 2020 at 10:04 AM Michal Privoznik  wrote:
>
> On 1/14/20 2:46 PM, marcandre.lur...@redhat.com wrote:
> > From: Marc-André Lureau 
>
>
> Sorry for late review. I will reply to individual patches with suggested
> changes. I have them locally as a fixup patches, so I can squash them
> and resend (keeping your authorship of course). You can also find them
> on my branch (if you want to test them):
>
>https://github.com/zippy2/libvirt/commits/qemu_dbus_review

thanks for the review and the patches, I'll send a new version soon.




Re: [libvirt] [PATCH 0/8] Second take on slirp-helper & dbus-vmstate

2020-02-20 Thread Michal Privoznik

On 1/14/20 2:46 PM, marcandre.lur...@redhat.com wrote:

From: Marc-André Lureau 



Sorry for late review. I will reply to individual patches with suggested 
changes. I have them locally as a fixup patches, so I can squash them 
and resend (keeping your authorship of course). You can also find them 
on my branch (if you want to test them):


  https://github.com/zippy2/libvirt/commits/qemu_dbus_review

Michal



Re: [libvirt] [PATCH 0/8] Second take on slirp-helper & dbus-vmstate

2020-02-14 Thread Marc-André Lureau
Hi

On Tue, Jan 14, 2020 at 2:47 PM  wrote:
>
> From: Marc-André Lureau 
>
> Hi,
>
> The series "[libvirt] [PATCH v2 00/23] Use a slirp helper process" has
> been merged and partially reverted. Meanwhile, qemu dbus-vmstate
> design has been changed and merged upstream.
>
> This new series fixes the slirp-helper support. The significant change
> is that dbus-vmstate now requires a bus (instead of the earlier
> peer-to-peer connection). The current series doesn't attempt to
> enforce strict policies on the bus. As long as you can connect to the
> bus, you can send/receive from/to anyone. A follow-up series should
> implement the recommendations from
> https://qemu.readthedocs.io/en/latest/interop/dbus.html#security.
>
> The libslirp-rs slirp-helper hasn't yet received an official release.
> For testing, you may:
> $ cargo install --features=all --git 
> https://gitlab.freedesktop.org/slirp/libslirp-rs
>
> The resulting binary should be ~/.cargo/bin/slirp-helper, so qemu.conf
> slirp_helper location should be adjusted. With that in place, a VM
> with user networking (slirp) should now start with the helper process.
>
> thanks
>
> Marc-André Lureau (8):
>   qemu: remove dbus-vmstate code
>   qemu-conf: add configurable dbus-daemon location
>   qemu-conf: add dbusStateDir
>   qemu: add a DBus daemon helper unit
>   domain: save/restore the state of dbus-daemon running
>   qemu: prepare and stop the dbus daemon
>   qemu: add dbus-vmstate helper migration support
>   qemu-slirp: register helper for migration

Can I get some feedback/review on the series?

Fwiw, in the past month, we have seen a new implementation emerge
(https://github.com/majek/slirpnetstack) and this made me reconsider a
number of CLI/capabilities things from the spec. I moved the spec on a
wiki for now: 
https://gitlab.freedesktop.org/slirp/libslirp/-/wikis/Slirp-Helper.
We are also discussing with podman developpers about it.

Given that this is not frozen, and no helper was released so far, I
understand that libvirt may want to back off a little. Yet, your
feedback could also help shape/define the helper behaviour!

So please, take a look :)
thanks

>
>  m4/virt-driver-qemu.m4 |   6 +
>  src/qemu/Makefile.inc.am   |   6 +-
>  src/qemu/libvirtd_qemu.aug |   1 +
>  src/qemu/qemu.conf |   3 +
>  src/qemu/qemu_alias.c  |  17 +-
>  src/qemu/qemu_alias.h  |   3 +-
>  src/qemu/qemu_command.c|  65 +++
>  src/qemu/qemu_command.h|   6 +-
>  src/qemu/qemu_conf.c   |   9 +
>  src/qemu/qemu_conf.h   |   2 +
>  src/qemu/qemu_dbus.c   | 283 +
>  src/qemu/qemu_dbus.h   |  30 +--
>  src/qemu/qemu_domain.c |  30 +--
>  src/qemu/qemu_domain.h |   9 +-
>  src/qemu/qemu_extdevice.c  |   4 +-
>  src/qemu/qemu_hotplug.c| 165 +
>  src/qemu/qemu_hotplug.h|  17 +-
>  src/qemu/qemu_migration.c  |  57 +-
>  src/qemu/qemu_monitor.c|  21 +++
>  src/qemu/qemu_monitor.h|   3 +
>  src/qemu/qemu_monitor_json.c   |  15 ++
>  src/qemu/qemu_monitor_json.h   |   5 +
>  src/qemu/qemu_process.c|   6 +
>  src/qemu/qemu_slirp.c  | 126 ++---
>  src/qemu/qemu_slirp.h  |   4 +-
>  src/qemu/test_libvirtd_qemu.aug.in |   1 +
>  tests/Makefile.am  |   1 +
>  27 files changed, 564 insertions(+), 331 deletions(-)
>
> --
> 2.25.0.rc2.1.g09a9a1a997
>
> --
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list



-- 
Marc-André Lureau




[libvirt] [PATCH 0/8] Second take on slirp-helper & dbus-vmstate

2020-01-14 Thread marcandre . lureau
From: Marc-André Lureau 

Hi,

The series "[libvirt] [PATCH v2 00/23] Use a slirp helper process" has
been merged and partially reverted. Meanwhile, qemu dbus-vmstate
design has been changed and merged upstream.

This new series fixes the slirp-helper support. The significant change
is that dbus-vmstate now requires a bus (instead of the earlier
peer-to-peer connection). The current series doesn't attempt to
enforce strict policies on the bus. As long as you can connect to the
bus, you can send/receive from/to anyone. A follow-up series should
implement the recommendations from
https://qemu.readthedocs.io/en/latest/interop/dbus.html#security.

The libslirp-rs slirp-helper hasn't yet received an official release.
For testing, you may:
$ cargo install --features=all --git 
https://gitlab.freedesktop.org/slirp/libslirp-rs

The resulting binary should be ~/.cargo/bin/slirp-helper, so qemu.conf
slirp_helper location should be adjusted. With that in place, a VM
with user networking (slirp) should now start with the helper process.

thanks

Marc-André Lureau (8):
  qemu: remove dbus-vmstate code
  qemu-conf: add configurable dbus-daemon location
  qemu-conf: add dbusStateDir
  qemu: add a DBus daemon helper unit
  domain: save/restore the state of dbus-daemon running
  qemu: prepare and stop the dbus daemon
  qemu: add dbus-vmstate helper migration support
  qemu-slirp: register helper for migration

 m4/virt-driver-qemu.m4 |   6 +
 src/qemu/Makefile.inc.am   |   6 +-
 src/qemu/libvirtd_qemu.aug |   1 +
 src/qemu/qemu.conf |   3 +
 src/qemu/qemu_alias.c  |  17 +-
 src/qemu/qemu_alias.h  |   3 +-
 src/qemu/qemu_command.c|  65 +++
 src/qemu/qemu_command.h|   6 +-
 src/qemu/qemu_conf.c   |   9 +
 src/qemu/qemu_conf.h   |   2 +
 src/qemu/qemu_dbus.c   | 283 +
 src/qemu/qemu_dbus.h   |  30 +--
 src/qemu/qemu_domain.c |  30 +--
 src/qemu/qemu_domain.h |   9 +-
 src/qemu/qemu_extdevice.c  |   4 +-
 src/qemu/qemu_hotplug.c| 165 +
 src/qemu/qemu_hotplug.h|  17 +-
 src/qemu/qemu_migration.c  |  57 +-
 src/qemu/qemu_monitor.c|  21 +++
 src/qemu/qemu_monitor.h|   3 +
 src/qemu/qemu_monitor_json.c   |  15 ++
 src/qemu/qemu_monitor_json.h   |   5 +
 src/qemu/qemu_process.c|   6 +
 src/qemu/qemu_slirp.c  | 126 ++---
 src/qemu/qemu_slirp.h  |   4 +-
 src/qemu/test_libvirtd_qemu.aug.in |   1 +
 tests/Makefile.am  |   1 +
 27 files changed, 564 insertions(+), 331 deletions(-)

-- 
2.25.0.rc2.1.g09a9a1a997

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