[PATCH v2 3/8] Validate remote store NVRAM

2022-04-08 Thread Rohit Kumar
Remote store NVRAM feature is being enabled only if it supports 'blockdev' capability. Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- src/qemu/qemu_validate.c | 22 ++ 1 file changed, 22 insertions(+) diff --git

[PATCH v2 4/8] Cleanup diskSourceNetwork and diskSourceFile schema

2022-04-08 Thread Rohit Kumar
Moving diskSourceNetwork and diskSourceFile's Source definition under 'define' element, so that it will be easier to reuse it at multiple places. Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- src/conf/schemas/domaincommon.rng | 60

[PATCH v2 8/8] Add unit test to support new 'file' type NVRAM

2022-04-08 Thread Rohit Kumar
This patch adds an unit test to test xml when NVRAM type 'file' is provided. Example: Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- .../bios-nvram-file.x86_64-latest.args| 37 +++

[PATCH v2 6/8] Update NVRAM documentation

2022-04-08 Thread Rohit Kumar
Updating the doc as now NVRAM can be remote as well. Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- docs/formatdomain.rst | 43 +++ 1 file changed, 35 insertions(+), 8 deletions(-) diff --git

[PATCH v2 2/8] Add support to parse/format virStorageSource type NVRAM

2022-04-08 Thread Rohit Kumar
This patch introduces the logic to support remote NVRAM and adds 'type' attribute to nvram element. Sample XML with new annotation: or Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- src/conf/domain_conf.c | 81

[PATCH v2 7/8] Add unit test for network backed NVRAM

2022-04-08 Thread Rohit Kumar
This patch adds unit test for network backed NVRAM Example: Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- .../bios-nvram-network.x86_64-latest.args | 37 +++ tests/qemuxml2argvdata/bios-nvram-network.xml | 25

[PATCH v2 0/8] Introduce network backed NVRAM

2022-04-08 Thread Rohit Kumar
Libvirt domain XML currently allows only local filepaths that can be used to specify a NVRAM disk. Since, VMs can migrate across hypervisor hosts, it should be possible to allocate NVRAM disks on network storage for uninterrupted access. This series extends the NVRAM element to support hosting

[PATCH v2 5/8] Update XML schema to support network backed NVRAM

2022-04-08 Thread Rohit Kumar
This patch updates NVRAM element schema to support network backed NVRAM. It introduces 'type' attribute to NVRAM element. Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar --- src/conf/schemas/domaincommon.rng | 20 +++- 1 file changed, 19

[PATCH v2 1/8] Make NVRAM a virStorageSource type.

2022-04-08 Thread Rohit Kumar
Currently, libvirt allows only local filepaths to specify a NVRAM disk. Since, VMs can migrate across hosts, so making it to virStorageSource type would help in uninturrupted access NVRAM disks over network. Signed-off-by: Prerna Saxena Signed-off-by: Florian Schmidt Signed-off-by: Rohit Kumar

Re: what is virtunixd ? Is there such a daemon?

2022-04-08 Thread Claudio Fontana
On 4/7/22 5:23 PM, Liang Yan wrote: > > On 4/7/22 04:19, Claudio Fontana wrote: >> Hello, >> >> as I experiment with virsh migration commands (and probably I do things that >> don't make sense), >> >> I got an error I could not understand: >> >> # virsh migrate centos7 unix:///tmp/netcat.sock >>

Re: [PATCH 00/11] docs: Convert some pages to rST and clean up (part 4)

2022-04-08 Thread Peter Krempa
On Fri, Apr 08, 2022 at 13:23:38 +0200, Michal Prívozník wrote: > On 4/7/22 16:00, Peter Krempa wrote: > > This part focuses on 'internals' documents along comes simplification of > > the XSL usage for 'href_base' and conversion of the 'docs/docs' > > directory page to RST as I was modifying it in

Re: [libvirt PATCH 0/5] Fix error handling in nwfilterStateInitialize

2022-04-08 Thread Michal Prívozník
On 4/8/22 15:12, Tim Wiederhake wrote: > See patch 5 for description. > > Tim Wiederhake (5): > virNWFilterObjListFree: Prevent null pointer derefernce > virNWFilterSnoopState: Prevent mutex leak > nwfilterDriverRemoveDBusMatches: Prevent unsubscribing from null id >

[libvirt PATCH 0/5] Fix error handling in nwfilterStateInitialize

2022-04-08 Thread Tim Wiederhake
See patch 5 for description. Tim Wiederhake (5): virNWFilterObjListFree: Prevent null pointer derefernce virNWFilterSnoopState: Prevent mutex leak nwfilterDriverRemoveDBusMatches: Prevent unsubscribing from null id virNWFilterDriverState: Destroy mutex safely nwfilterStateInitialize:

[libvirt PATCH 4/5] virNWFilterDriverState: Destroy mutex safely

2022-04-08 Thread Tim Wiederhake
Allow nwfilterStateCleanupLocked to be called on a partially constructed driver object. This enables the next patch to simplify and fix error handling in nwfilterStateInitialize. Signed-off-by: Tim Wiederhake --- src/conf/virnwfilterobj.h | 1 + src/nwfilter/nwfilter_driver.c | 4 +++- 2

[libvirt PATCH 5/5] nwfilterStateInitialize: Simplify and fix error handling

2022-04-08 Thread Tim Wiederhake
Under certain circumstances nwfilterStateInitialize could leak memory: If e.g. the call to virNWFilterConfLayerInit fails, the error path err_techdrivers_shutdown does not free the previously allocated memory held in driver->stateDir. Signed-off-by: Tim Wiederhake ---

[libvirt PATCH 3/5] nwfilterDriverRemoveDBusMatches: Prevent unsubscribing from null id

2022-04-08 Thread Tim Wiederhake
Allow nwfilterDriverRemoveDBusMatches to be called without nwfilterDriverInstallDBusMatches being called previously. This enables a later patch to use nwfilterDriverRemoveDBusMatches as a cleanup function safely. Signed-off-by: Tim Wiederhake --- src/nwfilter/nwfilter_driver.c | 13

[libvirt PATCH 2/5] virNWFilterSnoopState: Prevent mutex leak

2022-04-08 Thread Tim Wiederhake
virNWFilterDHCPSnoopShutdown would never destroy the mutexes created in virNWFilterDHCPSnoopInit. Additionally, if in virNWFilterDHCPSnoopInit the call to virMutexInitRecursive succeeds and the call to virMutexInit fails, this would lead to either virNWFilterSnoopState.snoopLock being initialized

[libvirt PATCH 1/5] virNWFilterObjListFree: Prevent null pointer derefernce

2022-04-08 Thread Tim Wiederhake
Allow virNWFilterObjListFree to be called with a NULL argument. This enables a later patch to use virNWFilterObjListFree as a cleanup function safely, as it is a no-op if virNWFilterObj was not yet initialized. Signed-off-by: Tim Wiederhake --- src/conf/virnwfilterobj.c | 3 +++ 1 file changed,

Re: [PATCH 00/11] docs: Convert some pages to rST and clean up (part 4)

2022-04-08 Thread Michal Prívozník
On 4/7/22 16:00, Peter Krempa wrote: > This part focuses on 'internals' documents along comes simplification of > the XSL usage for 'href_base' and conversion of the 'docs/docs' > directory page to RST as I was modifying it in the process. > > Additionally this series actually makes use of the

Re: [libvirt PATCH 0/2] qemu: Drop QEMU_CAPS_INCOMING_DEFER

2022-04-08 Thread Peter Krempa
On Fri, Apr 08, 2022 at 08:36:59 +0200, Jiri Denemark wrote: > This capability is supported even in QEMU 3.1.0 which is the oldest > supported version of QEMU. > > Jiri Denemark (2): > qemu: Simplify qemuProcessIncomingDef > qemu: Drop QEMU_CAPS_INCOMING_DEFER Reviewed-by: Peter Krempa

[PATCH 11/17] virDomainDiskDefParseSourceXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainDiskDefParseSourceXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 14 +- 1 file changed, 5 insertions(+), 9

[PATCH 14/17] virDomainPanicDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainPanicDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 11 --- src/conf/domain_conf.h | 2 +-

[PATCH 15/17] virDomainInputDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainInputDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_audit.c | 2 +- src/conf/domain_conf.c | 86

[PATCH 16/17] virDomainHubDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainHubDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 17 - src/conf/domain_conf.h | 14

[PATCH 17/17] virDomainTimerDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainTimerDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 105 +--

[PATCH 13/17] virDomainTPMDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainTPMDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 43

[PATCH 08/17] virDomainDiskSourceNVMeParse: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainDiskSourceNVMeParse() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 15 +++ 1 file changed, 3 insertions(+), 12

[PATCH 10/17] virDomainDiskSourcePoolDefParse: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainDiskSourcePoolDefParse() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 12 src/conf/storage_source_conf.h

[PATCH 07/17] virDomainHostdevSubsysSCSIVHostDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainHostdevSubsysSCSIVHostDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 19 +--

[PATCH 05/17] virDomainStorageNetworkParseHost: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainStorageNetworkParseHost() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c| 19 +++

[PATCH 09/17] virDomainDiskDefMirrorParse: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainDiskDefMirrorParse() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 26 ++ src/conf/domain_conf.h |

[PATCH 06/17] virDomainHostdevSubsysSCSIDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainHostdevSubsysSCSIDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/domain_conf.c | 19 ++- src/conf/domain_conf.h

[PATCH 12/17] virDomainChrDefParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainChrDefParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/ch/ch_monitor.c | 2 +- src/conf/domain_conf.c | 82

[PATCH 00/17] Use virXMLPropEnum() more (part I)

2022-04-08 Thread Michal Privoznik
I've started rewriting parser to use virXMLPropEnum() functions family more instead of virXMLPropString() + str2enum. This is what I've done so far. If these get merged I can continue working on it. Michal Prívozník (17): Drop needless typecast to virStorageType enum

[PATCH 01/17] Drop needless typecast to virStorageType enum

2022-04-08 Thread Michal Privoznik
There are three places (two in domain_conf.c and one in qemu_migration.c) where a virStorageSource->type is typecasted to virStorageType (for the purpose of catching missing enum member in a switch() statement at compile time). This is needless, because as of v8.2.0-rc1~120 the struct member is of

[PATCH 02/17] virStorageSourceGetActualType: Change type of retval

2022-04-08 Thread Michal Privoznik
The virStorageSourceGetActualType() function returns either virStorageSource->type (which is of type virStorageType), or virStorageSourcePoolDef->type, which really stores a value of the same enum. Thus, the latter struct can be changed so that the virStorageSourceGetActualType() function can

[PATCH 04/17] virDomainDeviceAddressParseXML: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainDeviceAddressParseXML() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/device_conf.c | 12 - src/conf/device_conf.h | 4 +--

[PATCH 03/17] virDomainBackupDefParse: Switch to virXMLPropEnumDefault()

2022-04-08 Thread Michal Privoznik
The virDomainBackupDefParse() function uses old style of parsing XML (virXMLPropString + str2enum conversion). Use virXMLPropEnumDefault() which encapsulates those steps. Signed-off-by: Michal Privoznik --- src/conf/backup_conf.c | 16 ++-- src/conf/backup_conf.h | 2 +- 2 files

Re: [PATCH v2] conf: Move validation from virDomainDiskDefIotuneParse into the validation callback

2022-04-08 Thread Peter Krempa
On Thu, Apr 07, 2022 at 22:57:29 +0530, Moteen Shah wrote: > From: Moteen Shah > > all the option collision total and... error messages in > virDomainDiskDefIotuneParse shifted to validation callback > > Signed-off-by: Moteen Shah > --- > src/conf/domain_conf.c | 55

[libvirt PATCH 2/2] qemu: Drop QEMU_CAPS_INCOMING_DEFER

2022-04-08 Thread Jiri Denemark
The capability is not used anymore since "-incoming defer" is supported by all QEMU versions we care about. Signed-off-by: Jiri Denemark --- src/qemu/qemu_capabilities.c | 3 +-- src/qemu/qemu_capabilities.h | 2 +-

[libvirt PATCH 0/2] qemu: Drop QEMU_CAPS_INCOMING_DEFER

2022-04-08 Thread Jiri Denemark
This capability is supported even in QEMU 3.1.0 which is the oldest supported version of QEMU. Jiri Denemark (2): qemu: Simplify qemuProcessIncomingDef qemu: Drop QEMU_CAPS_INCOMING_DEFER src/qemu/qemu_capabilities.c | 3 +-- src/qemu/qemu_capabilities.h |

[libvirt PATCH 1/2] qemu: Simplify qemuProcessIncomingDef

2022-04-08 Thread Jiri Denemark
All QEMU releases currently supported by libvirt already understand "-incoming defer". We can drop the code handling "-incoming URI". Signed-off-by: Jiri Denemark --- src/qemu/qemu_migration.c | 3 +-- src/qemu/qemu_process.c | 22 +++--- src/qemu/qemu_process.h | 3 +-- 3