[libvirt] [PATCH 0/3] nwfilter: Create common virNWFilterObj* APIs
by John Ferlan
Effectively move code from nwfilter_driver.c into virnwfiltereobj to
count the number of devices, to return a list of names, and to return
an array of filters.
FWIW: This is part of the common driver objects code I've been working
through. I figured I will post each driver separately rather than one
larger series.
John Ferlan (3):
nwfilter: Introduce virNWFilterObjNumOfNWFilters
nwfilter: Introduce virNWFilterObjGetNames
nwfilter: Introduce virNWFilterObjListExport
src/conf/virnwfilterobj.c | 104 +++++++++++++++++++++++++++++++++++++++++
src/conf/virnwfilterobj.h | 22 +++++++++
src/libvirt_private.syms | 3 ++
src/nwfilter/nwfilter_driver.c | 86 +++++-----------------------------
4 files changed, 140 insertions(+), 75 deletions(-)
--
2.9.3
7 years, 8 months
[libvirt] [libvirt-3.2] NBD-based storage migration fails with "error: invalid argument: monitor must not be NULL"
by Kashyap Chamarthy
[Filed this bug -- https://bugzilla.redhat.com/show_bug.cgi?id=1439841]
Easy reproducer:
$ virsh migrate --verbose --copy-storage-all \
--p2p --live l2-f25 qemu+ssh://root@devstack-a/system
error: invalid argument: monitor must not be NULL
- - -
This is a nested Fedora-25 environment. So, I'm trying to migrate a
level-2 Fedora-25 guest.
libvirt version:
$ rpm -q libvirt-daemon-kvm
libvirt-daemon-kvm-3.2.0-1.fc25.x86_64
The QEMU binary used to boot the nested guest (to be migrated) on source
guest hypervisor (host from which migration originates) _and_ on the
destination guest hypervisor is built from Git, with this specific patch
from QEMU
https://lists.nongnu.org/archive/html/qemu-block/2017-04/msg00085.html
-- [RFC PATCH for-2.9] block: Ignore guest dev permissions during
incoming migration
So the built binary version (showing `git describe` output):
$ /home/stack/build/build-qemu/x86_64-softmmu/qemu-system-x86_64 --version
QEMU emulator version 2.8.93 (v2.9.0-rc3-3-g3a8624b)
NB: However, the QEMU version is irrelevant, Michal Privoznik confirms
on IRC that this is a clear libvirt bug.
Steps to reproduce
------------------
(1) Setup two hosts:
https://kashyapc.fedorapeople.org/virt/libvirt-migration-tests-with-qemu+...
(2) Then, migrate the guest to the destination host:
$ virsh migrate --verbose --copy-storage-all \
--p2p --live l2-f25 qemu+ssh://root@devstack-a/system
Actual results
--------------
$ virsh migrate --verbose --copy-storage-all \
--p2p --live l2-f25 qemu+ssh://root@devstack-a/system
error: invalid argument: monitor must not be NULL
--
/kashyap
7 years, 8 months
[libvirt] [PATCH 0/3] Add support for coalesce settings on interfaces
by Martin Kletzander
In linux this is supported since 4.11-rc3, I tested it with
4.11.0-rc5-next-20170407. The particular patch can be found
here:
https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git/commit...
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1414627
Martin Kletzander (3):
util: Add virNetDevSetCoalesce function
conf, docs: Add support for coalesce setting(s)
Set coalesce settings for domain interfaces
configure.ac | 3 +-
docs/formatdomain.html.in | 24 ++++++
docs/schemas/domaincommon.rng | 3 +
docs/schemas/networkcommon.rng | 17 ++++
src/bhyve/bhyve_command.c | 2 +-
src/conf/domain_conf.c | 9 +++
src/conf/domain_conf.h | 2 +
src/conf/networkcommon_conf.c | 91 ++++++++++++++++++++++
src/conf/networkcommon_conf.h | 9 +++
src/libvirt_private.syms | 3 +
src/network/bridge_driver.c | 2 +-
src/qemu/qemu_domain.c | 31 ++++++++
src/qemu/qemu_interface.c | 2 +-
src/uml/uml_conf.c | 2 +-
src/util/virnetdev.c | 83 ++++++++++++++++++++
src/util/virnetdev.h | 34 ++++++++
src/util/virnetdevtap.c | 8 +-
src/util/virnetdevtap.h | 2 +
tests/bhyvexml2argvmock.c | 1 +
.../qemuxml2argvdata/qemuxml2argv-net-coalesce.xml | 64 +++++++++++++++
.../qemuxml2xmlout-net-coalesce.xml | 69 ++++++++++++++++
tests/qemuxml2xmltest.c | 1 +
22 files changed, 456 insertions(+), 6 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-net-coalesce.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-coalesce.xml
--
2.12.2
7 years, 8 months
[libvirt] [PATCH 0/7] storage: Create common virStorageObj* APIs
by John Ferlan
Merge code in storage_driver.c and test_driver into virstorageobj to
count the number of volumes/pools, to return a list of names, return
the collected list of objects for volumes/pools. For volumes, that's
moved code, while for pools that's just changing the export API to
take an address of 'devobjs' to follow other usages. I also added
code to converge the FindBy{UUID|Name}
FWIW: This is part of the common driver objects code I've been working
through. I figured I will post each driver separately rather than one
John Ferlan (7):
storage: Introduce virStoragePoolObjNumOfVolumes
storage: Introduce virStoragePoolObjVolumeGetNames
storage: Introduce virStoragePoolObjVolumeListExport
storage: Introduce virStoragePoolObjNumOfStoragePools
storage: Introduce virStoragePoolObjGetNames
storage: Pass driver arg by ref
storage: Create helpers to perform FindByUUID and FindByName
src/conf/virstorageobj.c | 165 +++++++++++++++++++++++-
src/conf/virstorageobj.h | 45 ++++++-
src/libvirt_private.syms | 5 +
src/storage/storage_driver.c | 297 +++++++++++++------------------------------
src/test/test_driver.c | 131 +++++--------------
5 files changed, 332 insertions(+), 311 deletions(-)
--
2.9.3
7 years, 8 months
[libvirt] [PATCH 0/3] nodedev: Create common virNodeDeviceObj* APIs
by John Ferlan
Merge code in node_device_driver.c and test_driver into virnodedeviceobj
to count the number of devices and to return a list of names. Also modify
the export list API to take an address of 'devobjs' to follow other usages.
FWIW: This is part of the common driver objects code I've been working
through. I figured I will post each driver separately rather than one
larger series.
John Ferlan (3):
nodedev: Introduce virNodeDeviceObjNumOfDevices
nodedev: Introduce virNodeDeviceObjGetNames
nodedev: Pass driver arg by ref
src/conf/virnodedeviceobj.c | 66 +++++++++++++++++++++++++++++++++---
src/conf/virnodedeviceobj.h | 20 ++++++++---
src/libvirt_private.syms | 3 +-
src/node_device/node_device_driver.c | 48 +++++++-------------------
src/test/test_driver.c | 33 ++++--------------
5 files changed, 98 insertions(+), 72 deletions(-)
--
2.9.3
7 years, 8 months
[libvirt] [PATCH 0/3] interface: Create common virInterface* APIs
by John Ferlan
Effectively move code from test_driver.c into virinterfaceobj to
count the number of devices and to return a list of names. Patch 3
is a bit out of order from my norm, but at least I didn't forget...
FWIW: This is part of the common driver objects code I've been working
through. I figured I will post each driver separately rather than one
larger series.
John Ferlan (3):
interface: Introduce virInterfaceObjNumOfInterfaces
interface: Introduce virInterfaceObjGetNames
interface: Clean up Interface section of test_driver
src/conf/virinterfaceobj.c | 54 ++++++++++++++++
src/conf/virinterfaceobj.h | 10 +++
src/libvirt_private.syms | 2 +
src/test/test_driver.c | 155 +++++++++++++++++++++------------------------
4 files changed, 139 insertions(+), 82 deletions(-)
--
2.9.3
7 years, 8 months
[libvirt] creating stream
by Vasiliy Tolstov
Hi. I know that libvirt devs does not like devs that used internal rpc
of libvirt... I need to create stream to use with upload/download and
as i see it does not created via rpc call, can you suggest me what
files i need to check to understand how virStreamNew works and how to
read write works internally?
Thanks!
--
Vasiliy Tolstov,
e-mail: v.tolstov(a)selfip.ru
7 years, 8 months
[libvirt] [PATCH v4 00/12] hyperv: add support for Hyper-V 2012 and newer.
by Dawid Zamirski
Changes in v4:
* changed hypervWqlQuery struct to use virBuffer as query member so that
hypervEnumAndPull and free it for us.
* fixed hypervFreeObject that had outdated code in code path that was
compiled away via preprocessor - this fix is in patch 5
* fixed whitespace/spelling and missing comment in generator
* update doc text
Dawid Zamirski (12):
hyperv: store WMI version in hypervPrivate.
hyperv: introduce hypervWmiClassInfo struct.
hyperv: update hypervObject struct.
hyperv: add hypervWqlQuery struct.
hyperv: make hypervEnumAndPull use hypervWqlQuery
hyperv: update generator input file.
hyperv: update wmi code generator.
hyperv: add helper for getting WMI class lists.
hyperv: port rest of the driver to new stucts.
hyperv: add hypervInitConnection.
hyperv: update driver documentation.
news: update for Hyper-V 2012+ support.
docs/drvhyperv.html.in | 2 +-
docs/news.xml | 11 +
src/Makefile.am | 2 -
src/hyperv/hyperv_driver.c | 166 ++++++++-------
src/hyperv/hyperv_private.h | 8 +-
src/hyperv/hyperv_wmi.c | 174 +++++++++++++---
src/hyperv/hyperv_wmi.h | 56 ++++-
src/hyperv/hyperv_wmi_classes.h | 30 +++
src/hyperv/hyperv_wmi_generator.input | 239 ++++++++++++++++++---
src/hyperv/hyperv_wmi_generator.py | 381 +++++++++++++++++++++++++---------
10 files changed, 822 insertions(+), 247 deletions(-)
--
2.9.3
7 years, 8 months
[libvirt] [PATCH v3 0/7] Provide an standard asyncio event loop impl
by Daniel P. Berrange
This patch series is a followup to Wojtek's v2 posting:
https://www.redhat.com/archives/libvir-list/2017-March/msg00838.html
It contains the fixes I pointed out in v1 / v2, along with a bunch of
updates to the event-test.py example, so we can use it to demonstrate
the asyncio impl. eg i'm using:
$ python3 ./examples/event-test.py --loop=asyncio --timeout=30 qemu:///session
Daniel P. Berrange (5):
event-test: free opaque data when removing callbacks
event-test: add timeout to exit event loop
event-test: unregister callbacks & close conn on exit
event-test: rename example event loop impl
event-test: add ability to run the asyncio event loop
Wojtek Porczyk (2):
Allow for ff callbacks to be called by custom event implementations
Add asyncio event loop implementation
MANIFEST.in | 1 +
examples/event-test.py | 194 +++++++++++++++---------
libvirt-override.c | 68 +++++----
libvirt-override.py | 23 +++
libvirt-python.spec.in | 2 +
libvirtaio.py | 399 +++++++++++++++++++++++++++++++++++++++++++++++++
sanitytest.py | 3 +-
setup.py | 12 ++
8 files changed, 603 insertions(+), 99 deletions(-)
create mode 100644 libvirtaio.py
--
2.9.3
7 years, 8 months
[libvirt] [PATCH 0/3] Fix issues with disk backend partition recognition
by John Ferlan
https://bugzilla.redhat.com/show_bug.cgi?id=1439132
As described in patches.
John Ferlan (3):
storage: Introduce virStorageBackendZeroDeviceHeader
logical: Use virStorageBackendZeroDeviceHeader to clear header
storage: Resolve issues with disk partition build/start checks
src/storage/storage_backend_disk.c | 4 ++++
src/storage/storage_backend_logical.c | 44 +----------------------------------
src/storage/storage_util.c | 28 ++++++++++++++++++----
src/storage/storage_util.h | 4 ++++
4 files changed, 33 insertions(+), 47 deletions(-)
--
2.9.3
7 years, 8 months