[libvirt] Release of libvirt-2.1.0
by Daniel Veillard
Sorry I didn't push an rc2 on Friday, finishing my move, but not seeing any
issue raised by rc1, I though it was better to push the final release now and free
up the tree for pending development. As a result 2.1.0 is tagged in git and I
pushed signed tarbal and rpms to the usual place:
ftp://libvirt.org/libvirt/
I didn't gave as much eyeballing to this release as usual, but this is still
a fairly big one with more than 300 commits. It is heavilly pushed toward
improvements of the code base, some major changes and fixes in the vz driver
and less bug fixes than the usual ratio:
Documentation:
- docs: Add Kimchi as Web Application (Ramon Medeiros)
- docs: Update docs to reflect LUKS secret changes (John Ferlan)
- docs: remove outdated suggestion to make patches with "diff -urp"/"git diff" (Laine Stump)
Portability:
- Fix RPM spec for wireshark on Fedora < 24 (Daniel P. Berrange)
- libvirt.spec.in: Adapt to newest wireshark plugindir (Michal Privoznik)
- virt-wireshark: Properly substract wireshark prefix (Michal Privoznik)
- virConfGetValueSSizeT: Fix build on 32 bits (Michal Privoznik)
- tests: command: Fix build on ppc64/aarch64 (Andrea Bolognani)
- libvirt.spec.in: require systemd-container on >= f24 (Daniel P. Berrange)
- build: drop hack for old mingw ssize_t (Eric Blake)
- build: virrandommock.c not needed on mingw (Eric Blake)
- maint: update to latest gnulib (Martin Kletzander)
- mingw-libvirt.spec.in: add perl + perl(Getopt::Long) BRs (Daniel P. Berrange)
- mingw-libvirt.spec.in: fix packaging of admin API and other bugs (Daniel P. Berrange)
Bug Fixes:
- storage: Document wiping formatted volume types (Martin Kletzander)
- qemu: remove panic dev models s390 and pseries when migrating (Boris Fiuczynski)
- schema: fix resolved interfaces of network type (Nikolay Shirokovskiy)
- qemu: fix domain id after domainCreateWithFlags() (Sascha Silbe)
- tests: qemu: Don't leak security manager object (Peter Krempa)
- qemu: Need to free fileprops in error path (John Ferlan)
- iscsi: Establish connection to target via static target login (John Ferlan)
- tools: Make use of the correct environment variables (Erik Skultety)
- qemu: Adjust the cur_ballon on coldplug/unplug of dimms (Shivaprasad G Bhat)
- virconf: Fix config file path construction (Erik Skultety)
- util: qemu: Don't generate any extra commas in virQEMUBuildCommandLineJSON (Peter Krempa)
- tests: qemuxml2xml: Avoid crash when processing an XML that fails to parse (Peter Krempa)
- conf: events: handle NULL uuid (Jovanka Gulicoska)
- lxc: Don't crash by forgetting to ref transient domains (Martin Kletzander)
- vz: handle gracefully races on undefining domain (Nikolay Shirokovskiy)
- qemu: Disallow usage of luks encryption if aes secret not possible (John Ferlan)
- storage: Fix error path (John Ferlan)
- lxc: errors after the handshake won't be reported (Cédric Bosdonnat)
- vsh: Properly initialize res (John Ferlan)
- conf: Need to check for glisten before accessing (John Ferlan)
- tests: Need to check return of virGetLastError (John Ferlan)
- tools: Fix comparison in virLoginShellGetShellArgv (John Ferlan)
- util: Fix incorrect VIR_FREE in virConfGetValueStringList (John Ferlan)
- fs: Fix '<' comparison of value produced by logical not '!' (Erik Skultety)
- security: compilation error due to wrong parameter for vah_add_path(). (Julio Faracco)
- vz: don't fail unregister on sending event error (Nikolay Shirokovskiy)
- vz: dont remove domain from list on client object error (Nikolay Shirokovskiy)
- vz: restore accidentally removed locks around close callback calls (Nikolay Shirokovskiy)
- vz: fixed null-pointer dereference in applying graphic params (Olga Krishtal)
- vz: fix destination domain synchronization (Nikolay Shirokovskiy)
- vz: fix memory leaks in prlsdkLoadDomains (Nikolay Shirokovskiy)
- vz: fix missed defined domain event (Nikolay Shirokovskiy)
- vz: don't pass empty and unused fields in migration cookie (Nikolay Shirokovskiy)
- qemu: Fix migration from old libvirt (Jiri Denemark)
- qemu: Drop default channel path during migration (Jiri Denemark)
- qemu: Copy complete domain def in qemuDomainDefFormatBuf (Jiri Denemark)
- conf: Make really sure we don't access non-existing vCPUs again (Martin Kletzander)
- conf: Make really sure we don't access non-existing vCPUs (Martin Kletzander)
- qemu: getAutoDumpPath() return value should be dumpfile not domname. (Yan Fu)
- systemd: fix ready notification on abstract socket (Jim Fehlig)
- virCommandExec: Report error if execve fails (Michal Privoznik)
- storage: dir: adapts .wipeVol for ploop volumes (Olga Krishtal)
- virconf: fix off-by-1 when appending \n to config file (Daniel P. Berrange)
- qemuxml2argvmock: Don't leak @netdef->ifname (Michal Privoznik)
- qemuxml2argvtest: Don't leak dummy monitor (Michal Privoznik)
- qemuDomainObjPrivateFree: Free @masterKey too (Michal Privoznik)
- qemuBuildCpuCommandLine: Don't leak @buf (Michal Privoznik)
- virStorageEncryptionSecretFree: Don't leak secret lookup definition (Michal Privoznik)
- Fix logic in qemuDomainObjPrivateXMLParseVcpu (Daniel P. Berrange)
- qemu: Properly reset spiceMigration flag (Jiri Denemark)
- virDomainHostdevDefFree: Don't leak privateData (Michal Privoznik)
Improvements:
- daemon: sasl: Don't forget to save SASL username to client's identity (Erik Skultety)
- admin: Retrieve the SASL context for both local and remote connection (Erik Skultety)
- wireshark: Drop glib dependency (Michal Privoznik)
- schema: add missed alias element to memory device (Nikolay Shirokovskiy)
- conf: Catch invalid memory model earlier (Michal Privoznik)
- admin: Fix default uri config option name s/admin_uri_default/uri_default (Erik Skultety)
- wireshark: Adapt to dissector function header change (Michal Privoznik)
- util: Introduce virISCSINodeNew (John Ferlan)
- vsh: Make vshInitDebug return int instead of void (Erik Skultety)
- Refresh translations from zanata (Daniel P. Berrange)
- vshReadlineParse: Drop some unused variables (Michal Privoznik)
- vshCmddefGetOption: Change type of opt_index (Michal Privoznik)
- libvirt.spec.in: fix indentation in previous commit (Daniel P. Berrange)
- storage: remove "luks" storage volume type (Daniel P. Berrange)
- virstoragefile: refactor virStorageFileMatchesNNN methods (Daniel P. Berrange)
- qemu: return balloon statistics when all domain statistics reported (Derbyshev Dmitry)
- qemu: split qemuDomainMemoryStats into internal and external functions (Derbyshev Dmitry)
- qemu: fix domain memory 'last-update' timestamp (Pavel Hrdina)
- qemu: fix domain memory 'usable' stat (Pavel Hrdina)
- virsh: Add balloon stats description to .pod (Derbyshev Dmitry)
- virt-admin.pod: Remove a statement about remote access to the daemon (Erik Skultety)
- qemu: command: Add support for multi-host gluster disks (Prasanna Kumar Kalever)
- qemu: command: Add infrastructure for object specified disk sources (Peter Krempa)
- util: qemu: Add support for numbered array members (Peter Krempa)
- storage: gluster: Support multiple hosts in backend functions (Peter Krempa)
- qemu: command: Refactor code extracted to qemuBuildDriveSourceStr (Peter Krempa)
- qemu: command: Extract drive source command line formatter (Peter Krempa)
- qemu: command: Split out network disk URI building (Peter Krempa)
- qemu: command: Rename qemuBuildNetworkDriveURI to qemuBuildNetworkDriveStr (Peter Krempa)
- util: storage: Add JSON backing volume parser for 'ssh' protocol (Peter Krempa)
- util: storage: Add 'ssh' network storage protocol (Peter Krempa)
- util: storage: Add JSON backing store parser for 'sheepdog' protocol (Peter Krempa)
- util: storage: Add JSON backing volume parser for 'nbd' protocol (Peter Krempa)
- util: storage: Add json pseudo protocol support for iSCSI volumes (Peter Krempa)
- util: storage: Add json pseudo protocol support for gluster volumes (Peter Krempa)
- util: storage: Add support for URI based backing volumes in qemu's JSON pseudo-protocol (Peter Krempa)
- util: storage: Add support for host device backing specified via JSON (Peter Krempa)
- util: storage: Add parser for qemu's json backing pseudo-protocol (Peter Krempa)
- util: json: Make first argument of virJSONValueCopy const (Peter Krempa)
- util: qemu: Allow for different approaches to format JSON arrays (Peter Krempa)
- util: qemu: Allow nested objects in JSON -> commandline generator (Peter Krempa)
- util: qemu: Add support for user-passed strings in JSON->commandline (Peter Krempa)
- util: qemu: Add wrapper for JSON -> commandline conversion (Peter Krempa)
- util: json: Make first argument of virJSONValueObjectForeachKeyValue const (Peter Krempa)
- tests: Add testing of backing store string parser (Peter Krempa)
- Remove unnecessary virDomainDefClearDeviceAliases (John Ferlan)
- conf: Remove CCW,PCI clear address helpers (John Ferlan)
- libxl: implement virDomainBlockStats (Joao Martins)
- qemu: rename QEMU_CAPS_MLOCK to QEMU_CAPS_REALTIME_MLOCK (Henning Schild)
- network: Added hook for network modification event (Anton Khramov)
- qemu: expand domain memory statistics with 'last-update' timestamp (Derbyshev Dmitry)
- qemu: expand domain memory statistics with 'usable' (Derbyshev Dmitry)
- qemu: remove ccwaddrs caching (Tomasz Flendrich)
- qemu_hotplug: generate ccw address list on demand (Tomasz Flendrich)
- Add qemuDomainCCWAddrSetCreateFromDomain (Tomasz Flendrich)
- qemu: remove vioserialaddrs caching (Tomasz Flendrich)
- qemu_hotplug: generate vioserial address list on demand (Tomasz Flendrich)
- add virDomainVirtioSerialAddrSetCreateFromDomain (Tomasz Flendrich)
- cgroup: drop INSERT_ELEMENT usage virCgroupPartitionEscape (Ján Tomko)
- util: systemd: Define MSG_NOSIGNAL if needed (Andrea Bolognani)
- qemu_monitor: search memballoon QOM device path using alias (Pavel Hrdina)
- qemu_monitor_json: add support to search QOM device path by device alias (Pavel Hrdina)
- Split qemuDomainDetachDeviceFlags in two (Tomasz Flendrich)
- Narrow down a parameter in qemuDomainDetachDeviceFlags (Tomasz Flendrich)
- Split qemuDomainAttachDeviceFlags in two (Tomasz Flendrich)
- qemu: Remove an unnecessary variables (Tomasz Flendrich)
- Change parameters to qemuDomainAttachDeviceLive (Tomasz Flendrich)
- qemuhotplugtest: Add tests for ccw devices (Tomasz Flendrich)
- virt-aa-helper: Make help output match option name (Guido Günther)
- qemu: hotplug: fix changeable media ejection (Bjoern Walk)
- lxc: make container's init process session leader (Katerina Koukiou)
- Auto-add one hub if there are too many USB devices (Ján Tomko)
- Assign addresses on USB device hotplug (Ján Tomko)
- Assign addresses to USB devices (Ján Tomko)
- Add tests for USB address assignment (Ján Tomko)
- Reserve existing USB addresses (Ján Tomko)
- Add functions for adding USB hubs to addrs (Ján Tomko)
- Add functions for adding USB controllers to addrs (Ján Tomko)
- Introduce virDomainUSBAddressSet (Ján Tomko)
- vz: make vz driver more responsive (Nikolay Shirokovskiy)
- vz: keep naming convention for domain objects (Nikolay Shirokovskiy)
- vz: remove redundant variable in prlsdkHandleVmAddedEvent (Nikolay Shirokovskiy)
- vz: use state variable sdkdom in prlsdkApplyConfig (Nikolay Shirokovskiy)
- storage: Add extra failure condition for luks volume creation (John Ferlan)
- qemu: Move setting of encobjAdded for qemuDomainAttachSCSIDisk (John Ferlan)
- qemu: Move setting of obj bools for qemuDomainAttachVirtioDiskDevice (John Ferlan)
- hvsupport: skip non-matching lines early (Ján Tomko)
- hvsupport: construct the group regex upfront (Ján Tomko)
- hvsupport: use a regex instead of XML::XPath (Ján Tomko)
- virt-aa-helper: better write denials handling (Cédric Bosdonnat)
- qemu: Add luks support for domain disk (John Ferlan)
- qemu: Alter the qemuDomainGetSecretAESAlias to add new arg (John Ferlan)
- qemu: Add secinfo for hotplug virtio disk (John Ferlan)
- storage: Add support to create a luks volume (John Ferlan)
- virt-admin: Output srv-threadpool-info data as unsigned int rather than signed (Erik Skultety)
- qemu: Move and rename qemuBufferEscapeComma (John Ferlan)
- qemu: Alter error path cleanup for qemuDomainAttachMemory (John Ferlan)
- qemu: Alter error path cleanup for qemuDomainAttachRNGDevice (John Ferlan)
- qemu: Alter error path cleanup for qemuDomainAttachChrDevice (John Ferlan)
- qemu: Alter error path cleanup for qemuDomainAttachSCSIDisk (John Ferlan)
- qemu: Alter error path cleanup for qemuDomainAttachVirtioDiskDevice (John Ferlan)
- qemu: Alter error path cleanup for qemuDomainAttachHostSCSIDevice (John Ferlan)
- vz: add tcp and udp serial device support (Nikolay Shirokovskiy)
- vz: add mode of unix socket serial device to xml dump (Nikolay Shirokovskiy)
- vz: use single variable for domain (Nikolay Shirokovskiy)
- vz: cleanup loading domain code (Nikolay Shirokovskiy)
- vz: use domain list infrastructure to deal with private domain (Nikolay Shirokovskiy)
- vz: make error handling idiomatic in prlsdkCreateVm (Nikolay Shirokovskiy)
- vz: fix leaks in prlsdkCreate* functions (Nikolay Shirokovskiy)
- vz: remove unnecessary labels in simple API calls (Nikolay Shirokovskiy)
- vz: support filesystem type volume (Olga Krishtal)
- vz: refactoring of prlsdkCreateCt (Olga Krishtal)
- devices: filesystems: added volume type (Olga Krishtal)
- filesystem: adds possibility to use storage pool as fs source (Olga Krishtal)
- test: Add scsi vport nodedev to test:///default (Cole Robinson)
- test: Have test:///default open use file parsing helpers (Cole Robinson)
- test: Move testOpenDefault definition later (Cole Robinson)
- test: Introduce testOpenParse (Cole Robinson)
- util: conf: Rename VIR_CONF_{U,}LONG -> VIR_CONF_{U,}LLONG (Andrea Bolognani)
- util: conf: Clarify choice between VIR_CONF_LONG and VIR_CONF_ULONG (Andrea Bolognani)
- util: conf: Fix parameters alignment (Andrea Bolognani)
- util: conf: Fix comment for virConfGetValueULLong() (Andrea Bolognani)
- util: conf: Claim the proper range for signed numbers (Andrea Bolognani)
- util: conf: Add integer casts (Andrea Bolognani)
- util: conf: Improve virConfGet*() logic (Andrea Bolognani)
- util: conf: Use long long when parsing (Andrea Bolognani)
- hvsupport: Introduce parseSymsFile (Ján Tomko)
- Store USB port path as an array of integers (Ján Tomko)
- Allow omitting USB port (Ján Tomko)
- virconf: skip some range checks if SSIZE_MAX >= LLONG_MAX (Daniel P. Berrange)
- virconf: clarify type range checks for integers (Daniel P. Berrange)
- conf: Revert changes to add new secret type "passphrase" (John Ferlan)
- tests: Adjust LUKS tests to use 'volume' secret type (John Ferlan)
- spec: Fix indentation (Andrea Bolognani)
- qemu: command: Fix awkward formatting (Andrea Bolognani)
- dnsmasq: disable IPv6 default gateway in RA for isolated networks (Maxim Perevedentsev)
- Fix message about dnsmasq BINDTODEVICE capability. (Maxim Perevedentsev)
- esx: Fetch snapshot info directly for filtering (Tomáš Golembiovský)
- qemu: format intel-iommu on the command line (Ján Tomko)
- Add QEMU_CAPS_DEVICE_INTEL_IOMMU (Ján Tomko)
- Introduce <iommu> device (Ján Tomko)
- test-wrap-argv: set cutoff at 78 characters (Ján Tomko)
- test-wrap-argv: print diff instead of the incorrectly wrapped file (Ján Tomko)
- testutils: only rewrap args files (Ján Tomko)
- testutils: find perl early (Ján Tomko)
- qemuxml2argvtest: drop empty pseries-vio-address-clash.args (Ján Tomko)
- tests: add missing directories in EXTRA_DIST (Luyao Huang)
- remote: convert to typesafe virConf accessors (Daniel P. Berrange)
- sanlock: convert to typesafe virConf accessors (Daniel P. Berrange)
- lockd: convert to typesafe virConf accessors (Daniel P. Berrange)
- selinux: convert to typesafe virConf accessors (Daniel P. Berrange)
- virt-login-shell: convert to typesafe virConf accessors (Daniel P. Berrange)
- uri: convert to typesafe virConf accessors (Daniel P. Berrange)
- libxl: convert to typesafe virConf accessors (Daniel P. Berrange)
- lxc: convert to typesafe virConf accessors (Daniel P. Berrange)
- virtlogd: convert to typedef virConf accessors (Daniel P. Berrange)
- virtlockd: convert to typesafe virConf accessors (Daniel P. Berrange)
- libvirt: convert to typesafe virConf accessors (Daniel P. Berrange)
- qemu: convert to typesafe virConf accessors (Daniel P. Berrange)
- libvirtd: convert to typesafe virConf accessors (Daniel P. Berrange)
- virconf: add typed value accessor methods (Daniel P. Berrange)
- tests: remove pointless virconftest.sh wrapper (Daniel P. Berrange)
- qemuhotplugtest: Move domain and device XMLs to different directories (Tomasz Flendrich)
- qemuhotplugtest: Move all XMLs to one directory (Tomasz Flendrich)
- virsh: allow both --uuid and --name at same time (Chen Hanxiao)
- qemu: Use qemuProcessSetupPid() in qemuProcessSetupVcpu() (Martin Kletzander)
- qemu: Use qemuProcessSetupPid() in qemuProcessSetupEmulator() (Martin Kletzander)
- qemu: Add qemuProcessSetupPid() and use it in qemuProcessSetupIOThread() (Martin Kletzander)
- qemu: capabilities: Make virHostCPUGetKVMMaxVCPUs() errors fatal (Andrea Bolognani)
- util: hostcpu: Drop obsolete compatibility code (Andrea Bolognani)
- util: hostcpu: Add virHostCPUGetKVMMaxVCPUs() stub (Andrea Bolognani)
- qemu: Store vCPU thread ids in vcpu private data objects (Peter Krempa)
- qemu: Add cpu ID to the vCPU pid list in the status XML (Peter Krempa)
- qemu: domain: Extract formating and parsing of vCPU thread ids (Peter Krempa)
- qemu: domain: Add vcpu private data structure (Peter Krempa)
- conf: Add private data for virDomainVcpuDef (Peter Krempa)
- conf: convert def->vcpus to a array of pointers (Peter Krempa)
- tests: qemuxml2xml: Format status XML header dynamically (Peter Krempa)
- conf: Don't report errors from virDomainDefGetVcpu (Peter Krempa)
- conf: Rename virDomainVcpuInfoPtr to virDomainVcpuDefPtr (Peter Krempa)
- conf: Extract code formatting vCPU info (Peter Krempa)
- conf: Annotate that private data for objects are not copied (Peter Krempa)
- virsh: Introduce vshReadlineParse for improved auto-completion (Nishith Shah)
- virsh: Add option to suppress error in various functions (Nishith Shah)
- virsh: Fix variable types in readline generators (Nishith Shah)
- virsh: Break vshCmddefOptParse into helper functions (Nishith Shah)
- bhyve: implement virConnectGetDomainCapabilities (Fabian Freyer)
- bhyve: fix bhyveargv2xml custom loader test (Roman Bogorodskiy)
- bhyve: add tests for bhyveParseCommandLineString (Fabian Freyer)
- bhyve: implement argument parser for loader (Fabian Freyer)
- bhyve: implement bhyve argument parser (Fabian Freyer)
- bhyve: implement virConnectDomainXMLFromNative (Fabian Freyer)
- gnulib: add getopt module (Fabian Freyer)
- tests: Add test cases for the empty bitmap (Marc Hartmayer)
- util: bitmap: Mention the size == 0 handling (Marc Hartmayer)
- util: bitmap: clarify virBitmapLastSetBit() behavior for empty bitmaps (Marc Hartmayer)
- tests: env perl shebang for test-wrap-argv.pl (Fabian Freyer)
- qemu: Drop useless SPICE migration code (Jiri Denemark)
- virtlogd: increase max file size to 2 MB (Daniel P. Berrange)
- virtlogd: make max file size & number of backups configurable (Daniel P. Berrange)
- qemu: caps: Always assume QEMU_CAPS_SMP_TOPOLOGY (Peter Krempa)
- qemu: generate -display none (Paolo Bonzini)
- qemu: detect -display (Paolo Bonzini)
- conf: Isolate virDomainLiveConfigHelperMethod to libxl only (Peter Krempa)
- conf: Don't use virDomainLiveConfigHelperMethod in virDomainObjGetMetadata (Peter Krempa)
- conf: Don't use virDomainLiveConfigHelperMethod in virDomainObjSetMetadata (Peter Krempa)
- openvz: Remove use of virDomainLiveConfigHelperMethod (Peter Krempa)
- lxc: Synchronize implementation of qemuDomainSetMemoryParameters (Peter Krempa)
- qemu: driver: Make name of QEMU_SET_MEM_PARAMETER more universal (Peter Krempa)
- spec: Move virt-admin into its own package (Michal Privoznik)
- spec: Split libvirt-client (Michal Privoznik)
- virlog: Introduce virLogFilterListFree (Erik Skultety)
- virlog: Introduce virLogFilterFree (Erik Skultety)
- virlog: Introduce virLogOutputListFree (Erik Skultety)
- virlog: Introduce virLogOutputFree (Erik Skultety)
- virlog: Convert virLogFilters to a list of pointers to filters (Erik Skultety)
- virlog: Convert virLogOutputs to a list of pointers to outputs (Erik Skultety)
- virlog: Return void instead of int in virLogReset<Foo> methods (Erik Skultety)
- qemu: Memory locking is only required for KVM guests on ppc64 (Andrea Bolognani)
- qemu: support setting host-side IP addresses/routes (Laine Stump)
- lxc: support setting host-side IP addresses/routes (Laine Stump)
- util: support setting peer for virNetDevIPInfo addresses (Laine Stump)
- conf: support host-side IP/route information in <interface> (Laine Stump)
- conf: allow setting peer address in <ip> element of <interface> (Vasiliy Tolstov)
- util: new function virNetDevIPInfoAddToDev (Laine Stump)
- qemu: Introduce helper qemuDomainSecretDiskCapable (John Ferlan)
- encryption: Add <cipher> and <ivgen> to encryption (John Ferlan)
- encryption: Add luks parsing for storageencryption (John Ferlan)
- util: Add 'usage' for encryption (John Ferlan)
- conf: Add new secret type "passphrase" (John Ferlan)
- conf: No need to check for usage fields during Format (John Ferlan)
- Allow custom metadata in network configuration XML (Brandon Bennett)
- util: new function virXMLNodeSanitizeNamespaces() (Laine Stump)
- util: hostcpu: Only define /dev/kvm path once (Andrea Bolognani)
- examples: check asprintf return value in client_info.c (Ján Tomko)
- events: Rename argument uuid->key (Cole Robinson)
- events: Add explicit lookup 'key' value (Cole Robinson)
- events: Pass in UUID as a string (Cole Robinson)
- events: Cleanup callback variable name (Cole Robinson)
- events: Add virObjectEventCallbackFree (Cole Robinson)
- events: Privatize virObjectEventCallback (Cole Robinson)
- Introduce virDomainUSBDeviceDefForeach (Ján Tomko)
- Add USB addresses to qemuhotplug test cases (Ján Tomko)
- qemu: Avoid needless copies of static strings (Jiri Denemark)
- qemu: Drop emitBootindex parameter (Jiri Denemark)
- qemu: Use bootindex whenever possible (Jiri Denemark)
- qemu: Remove redundant parameter in virQEMUCapsFillDomainCaps (Jiri Denemark)
- domaincapstest: Don't read data from host (Jiri Denemark)
- cpu: Drop NR_DRIVERS macro (Jiri Denemark)
- cpu: Drop generic driver (Jiri Denemark)
- Post-release version bump to 2.1.0 (Jiri Denemark)
Thanks everybody who contributed to this release, with code, ideas, reviews,
docs, and not forgetting the translator as this release got a major update from
zanata !
Enjoy !
Daniel
--
Daniel Veillard | Open Source and Standards, Red Hat
veillard(a)redhat.com | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | virtualization library http://libvirt.org/
8 years, 3 months
[libvirt] [PATCH] nsslinktest: also build virAtomic.h
by kai.7.kang@gmail.com
From: Kai Kang <kai.kang(a)windriver.com>
When build for architecture that don't use gcc atomic ops but pthread,
it fails to build for armel:
| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virClassNew':
| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:153: undefined reference to `virAtomicLock'
| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virObjectNew':
| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:205: undefined reference to `virAtomicLock'
| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virObjectUnref':
| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:277: undefined reference to `virAtomicLock'
| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virObjectRef':
| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:298: undefined reference to `virAtomicLock'
| collect2: error: ld returned 1 exit status
It is similar with:
http://libvirt.org/git/?p=libvirt.git;a=commit;h=12dc729
Signed-off-by: Kai Kang <kai.kang(a)windriver.com>
---
src/Makefile.am | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/Makefile.am b/src/Makefile.am
index 12b66c2..6e55972 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -2989,6 +2989,8 @@ noinst_LTLIBRARIES += libvirt-nss.la
libvirt_nss_la_SOURCES = \
util/viralloc.c \
util/viralloc.h \
+ util/viratomic.c \
+ util/viratomic.h \
util/virbitmap.c \
util/virbitmap.h \
util/virbuffer.c \
--
2.9.0
8 years, 3 months
[libvirt] [PATCH] virsystemd: Fix error check
by Marc Hartmayer
Commit b3e4401dc620 introduced a check to ignore an error if the guest
is already terminated. However the check accidentally compared
error.code with VIR_ERR_ERROR, which is an error level, not an error
code. Because of this, almost every error got silently ignored.
Fixes: b3e4401dc620 ("systemd: don't report an error if the guest is
already terminated")
Signed-off-by: Marc Hartmayer <mhartmay(a)linux.vnet.ibm.com>
Reviewed-by: Sascha Silbe <silbe(a)linux.vnet.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy(a)linux.vnet.ibm.com>
---
src/util/virsystemd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c
index 7d6985b..604dcdd 100644
--- a/src/util/virsystemd.c
+++ b/src/util/virsystemd.c
@@ -468,7 +468,7 @@ int virSystemdTerminateMachine(const char *name)
name) < 0)
goto cleanup;
- if (error.code == VIR_ERR_ERROR &&
+ if (error.level == VIR_ERR_ERROR &&
STRNEQ_NULLABLE("org.freedesktop.machine1.NoSuchMachine",
error.str1)) {
virReportErrorObject(&error);
--
2.5.5
8 years, 3 months
[libvirt] [PATCH 0/2] vz: add getting job info for migration
by Nikolay Shirokovskiy
Nikolay Shirokovskiy (2):
vz: add getting job info for migration
vz: add vzDomainGetJobStats
src/vz/vz_driver.c | 113 +++++++++++++++++++++++++++++++++++++++++++++++++++++
src/vz/vz_sdk.c | 31 +++++++++++++++
src/vz/vz_utils.c | 42 ++++++++++++++++----
src/vz/vz_utils.h | 17 +++++++-
4 files changed, 194 insertions(+), 9 deletions(-)
--
1.8.3.1
8 years, 3 months
[libvirt] [PATCH] build: centralize use of extra Cygwin LDFLAGS
by Eric Blake
The build was failing with:
CCLD lockd.la
libtool: error: can't build i686-pc-cygwin shared library unless -no-undefined is specified
Rather than add yet another $(CYGWIN_EXTRA_LDFLAGS) to all the
impacted *_la_LDFLAGS, it was easier to just pull the extra
flags into ALL libraries via AM_LDFLAGS.
Then, fix lockd_la_LDFLAGS to include AM_LDFLAGS, like all other
libraries.
Signed-off-by: Eric Blake <eblake(a)redhat.com>
---
Pushing under the build-breaker rule.
src/Makefile.am | 29 +++++++----------------------
1 file changed, 7 insertions(+), 22 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index cc1fca5..4416390 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -46,6 +46,8 @@ AM_LDFLAGS = $(DRIVER_MODULE_LDFLAGS) \
$(COVERAGE_LDFLAGS) \
$(RELRO_LDFLAGS) \
$(NO_INDIRECT_LDFLAGS) \
+ $(CYGWIN_EXTRA_LDFLAGS) \
+ $(MINGW_EXTRA_LDFLAGS) \
$(NULL)
EXTRA_DIST = $(conf_DATA) util/keymaps.csv
@@ -2180,9 +2182,7 @@ libvirt_admin_la_SOURCES = \
libvirt_admin_la_LDFLAGS = \
$(VERSION_SCRIPT_FLAGS)$(LIBVIRT_ADMIN_SYMBOL_FILE) \
-version-info $(LIBVIRT_VERSION_INFO) \
- $(AM_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS)
+ $(AM_LDFLAGS)
libvirt_admin_la_LIBADD = \
libvirt.la \
@@ -2224,8 +2224,6 @@ libvirt_la_LDFLAGS = \
-version-info $(LIBVIRT_VERSION_INFO) \
$(LIBVIRT_NODELETE) \
$(AM_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS) \
$(NULL)
libvirt_la_BUILT_LIBADD += ../gnulib/lib/libgnu.la
libvirt_la_LIBADD += \
@@ -2309,8 +2307,6 @@ libvirt_qemu_la_LDFLAGS = \
$(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
-version-info $(LIBVIRT_VERSION_INFO) \
$(AM_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS) \
$(NULL)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
@@ -2320,8 +2316,6 @@ libvirt_lxc_la_LDFLAGS = \
$(VERSION_SCRIPT_FLAGS)$(LIBVIRT_LXC_SYMBOL_FILE) \
-version-info $(LIBVIRT_VERSION_INFO) \
$(AM_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS) \
$(NULL)
libvirt_lxc_la_CFLAGS = $(AM_CFLAGS)
libvirt_lxc_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
@@ -2431,7 +2425,7 @@ lockd_la_SOURCES = \
lockd_la_CFLAGS = -I$(srcdir)/conf \
$(XDR_CFLAGS) \
$(AM_CFLAGS)
-lockd_la_LDFLAGS = -module -avoid-version
+lockd_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
lockd_la_LIBADD = ../gnulib/lib/libgnu.la \
libvirt-net-rpc.la \
libvirt-net-rpc-client.la \
@@ -2474,8 +2468,6 @@ virtlockd_CFLAGS = \
virtlockd_LDFLAGS = \
$(AM_LDFLAGS) \
$(PIE_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS) \
$(NULL)
virtlockd_LDADD = \
libvirt-net-rpc-server.la \
@@ -2502,8 +2494,6 @@ virtlogd_CFLAGS = \
virtlogd_LDFLAGS = \
$(AM_LDFLAGS) \
$(PIE_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS) \
$(NULL)
virtlogd_LDADD = \
libvirt-net-rpc-server.la \
@@ -2808,8 +2798,7 @@ libvirt_net_rpc_la_LDFLAGS = \
$(SSH2_LIBS)\
$(SECDRIVER_LIBS) \
$(AM_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS)
+ $(NULL)
libvirt_net_rpc_la_LIBADD = \
$(CYGWIN_EXTRA_LIBADD)
@@ -2829,8 +2818,7 @@ libvirt_net_rpc_server_la_LDFLAGS = \
$(AM_LDFLAGS) \
$(AVAHI_LIBS) \
$(DBUS_LIBS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS)
+ $(NULL)
libvirt_net_rpc_server_la_LIBADD = \
$(CYGWIN_EXTRA_LIBADD)
@@ -2841,10 +2829,7 @@ libvirt_net_rpc_client_la_SOURCES = \
libvirt_net_rpc_client_la_CFLAGS = \
$(AM_CFLAGS) \
$(XDR_CFLAGS)
-libvirt_net_rpc_client_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- $(CYGWIN_EXTRA_LDFLAGS) \
- $(MINGW_EXTRA_LDFLAGS)
+libvirt_net_rpc_client_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
$(CYGWIN_EXTRA_LIBADD)
--
2.5.5
8 years, 3 months
[libvirt] [PATCH] build: use XDR_CFLAGS for Cygwin build
by Eric Blake
Without XDR_CFLAGS, compilation on Cygwin fails with:
CC libvirt_driver_la-libvirt-stream.lo
In file included from libvirt-stream.c:26:0:
rpc/virnetprotocol.h:9:21: fatal error: rpc/rpc.h: No such file or directory
Signed-off-by: Eric Blake <eblake(a)redhat.com>
---
Pushing under the build-breaker rule
src/Makefile.am | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index e2a2128..cc1fca5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in
-## Copyright (C) 2005-2015 Red Hat, Inc.
+## Copyright (C) 2005-2016 Red Hat, Inc.
##
## This library is free software; you can redistribute it and/or
## modify it under the terms of the GNU Lesser General Public
@@ -1172,7 +1172,7 @@ libvirt_la_BUILT_LIBADD += libvirt_driver.la
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
libvirt_driver_la_CFLAGS = \
- $(GNUTLS_CFLAGS) $(CURL_CFLAGS) \
+ $(GNUTLS_CFLAGS) $(CURL_CFLAGS) $(XDR_CFLAGS) \
-I$(srcdir)/conf $(AM_CFLAGS)
libvirt_driver_la_LIBADD = \
$(GNUTLS_LIBS) $(CURL_LIBS) $(DLOPEN_LIBS)
@@ -1364,6 +1364,7 @@ endif ! WITH_DRIVER_MODULES
libvirt_driver_qemu_impl_la_CFLAGS = \
$(GNUTLS_CFLAGS) \
$(LIBNL_CFLAGS) \
+ $(XDR_CFLAGS) \
-I$(srcdir)/access \
-I$(srcdir)/conf \
-I$(srcdir)/secret \
--
2.5.5
8 years, 3 months
[libvirt] Libvirt's DomainGetInfo Function Development
by Aleem Akhtar
I am trying to get stats of Domains running under XEN hypervisor. I used
Libvirt function for this purpose. I am trying to understand output for
Memory. Domain running is Fedora-22 with 1GB Ram. Here is my code
y = virDomainGetInfo(allDomain, &info);
if (y == -1)
printf("Errorl\n");
else {
printf("Max Memory: %lu\n", info.maxMem);
printf("Memory: %lu", info.memory);
}
I get output as
*Max Memory: 1048576
Memory: 1048576*
Now, as per Libvirt API
<http://libvirt.org/html/libvirt-libvirt-domain.html#virDomainInfo>,
info.memory should return the memory in KBytes used by the domain. My
Question is, if info.memory returns memory used and my domain is using
complete 100% of Max Memory or not? Also I tried to create Domain with
memory varying from 128MB to 2GB with same effect. I also tried to run some
applications in Domain but Memory usage return by given function does not
change. Any help or guidance will be much appreciated.
*Regards,*
*Aleem Akhtar *
*Research Assistant | HPC-Lab | SEECS*
National University of Sciences & Technology
Sector H-12, Islamabad
Email: aleem.akhtar(a)seecs.nust.edu.pk
<aleem.akhtar(a)seecs.nust.edu.pk>
Website: aleemakhtar.com
8 years, 3 months
[libvirt] [PATCH] apparmor: move qemu-bridge-helper to libvirtd profile
by Cédric Bosdonnat
qemu-bridge-helper is only called from libvirtd, it has to be moved
from the qemu domain abstraction to the usr.sbin.libvirtd profile.
---
examples/apparmor/libvirt-qemu | 19 -------------------
examples/apparmor/usr.sbin.libvirtd | 18 ++++++++++++++++++
2 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/examples/apparmor/libvirt-qemu b/examples/apparmor/libvirt-qemu
index efb4873..11381d4 100644
--- a/examples/apparmor/libvirt-qemu
+++ b/examples/apparmor/libvirt-qemu
@@ -148,22 +148,3 @@
/etc/udev/udev.conf r,
/sys/bus/ r,
/sys/class/ r,
-
- /usr/{lib,libexec}/qemu-bridge-helper Cx -> qemu_bridge_helper,
- # child profile for bridge helper process
- profile qemu_bridge_helper {
- #include <abstractions/base>
-
- capability setuid,
- capability setgid,
- capability setpcap,
- capability net_admin,
-
- network inet stream,
-
- /dev/net/tun rw,
- /etc/qemu/** r,
- owner @{PROC}/*/status r,
-
- /usr/{lib,libexec}/qemu-bridge-helper rmix,
- }
diff --git a/examples/apparmor/usr.sbin.libvirtd b/examples/apparmor/usr.sbin.libvirtd
index 23f70f5..48651b2 100644
--- a/examples/apparmor/usr.sbin.libvirtd
+++ b/examples/apparmor/usr.sbin.libvirtd
@@ -67,4 +67,22 @@
# allow changing to our UUID-based named profiles
change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*,
+ /usr/{lib,libexec}/qemu-bridge-helper Cx -> qemu_bridge_helper,
+ # child profile for bridge helper process
+ profile qemu_bridge_helper {
+ #include <abstractions/base>
+
+ capability setuid,
+ capability setgid,
+ capability setpcap,
+ capability net_admin,
+
+ network inet stream,
+
+ /dev/net/tun rw,
+ /etc/qemu/** r,
+ owner @{PROC}/*/status r,
+
+ /usr/{lib,libexec}/qemu-bridge-helper rmix,
+ }
}
--
2.6.6
8 years, 3 months
[libvirt] [PATCH] tests: Fix broken build
by John Ferlan
Commit id 'f522b7d2' caused a build failure :
GEN check-augeas-virtlogd
Test failure:test_libvirtd_qemu.aug:69.3-147.28:
Expected:
{
...
{ "nvram"
{ "1" = "/usr/share/OVMF/OVMF_CODE.fd:/usr/share/OVMF/OVMF_VARS.fd" }
{ "2" = "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd" }
}
...
Actual:
...
{
{ "nvram"
{ "1" = "/usr/share/OVMF/OVMF_CODE.fd:/usr/share/OVMF/OVMF_VARS.fd" }
{ "2" = "/usr/share/OVMF/OVMF_CODE.secboot.fd:/usr/share/OVMF/OVMF_VARS.fd" }
{ "3" = "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd" }
}
...
This patch adds the OVMF_CODE.secboot.fd to the aug.in file
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
Pushed under build breaker rule. Although I wasn't 100% sure this is the
"expected" fix... Perhaps the original patch was missing something I don't
know for sure, but since Michal had gone home for the day, I figured it was
better than being stuck with a broken build.
src/qemu/test_libvirtd_qemu.aug.in | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/qemu/test_libvirtd_qemu.aug.in b/src/qemu/test_libvirtd_qemu.aug.in
index c4d4f19..99bf90f 100644
--- a/src/qemu/test_libvirtd_qemu.aug.in
+++ b/src/qemu/test_libvirtd_qemu.aug.in
@@ -77,6 +77,7 @@ module Test_libvirtd_qemu =
{ "log_timestamp" = "0" }
{ "nvram"
{ "1" = "/usr/share/OVMF/OVMF_CODE.fd:/usr/share/OVMF/OVMF_VARS.fd" }
- { "2" = "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd" }
+ { "2" = "/usr/share/OVMF/OVMF_CODE.secboot.fd:/usr/share/OVMF/OVMF_VARS.fd" }
+ { "3" = "/usr/share/AAVMF/AAVMF_CODE.fd:/usr/share/AAVMF/AAVMF_VARS.fd" }
}
{ "stdio_handler" = "logd" }
--
2.7.4
8 years, 3 months
[libvirt] [PATCH] lxcDomainCreateXMLWithFiles: Avoid crash
by Michal Privoznik
https://bugzilla.redhat.com/show_bug.cgi?id=1363773
Imagine that you're creating a transient domain, but for some reason,
starting it fails. That is virLXCProcessStart() returns an error. With
current code, in the error handling code the domain object is removed
from the domain object list, @vm is set to NULL and controls jump to
enjob label where virLXCDomainObjEndJob() is called which dereference vm
leading to instant crash.
The fix is to end the job in the error handling code and only after that
remove the domain from the list and jump onto cleanup label instead of
endjob.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/lxc/lxc_driver.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index 2e6788a..da98b38 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -1263,11 +1263,12 @@ lxcDomainCreateXMLWithFiles(virConnectPtr conn,
(flags & VIR_DOMAIN_START_AUTODESTROY),
VIR_DOMAIN_RUNNING_BOOTED) < 0) {
virDomainAuditStart(vm, "booted", false);
+ virLXCDomainObjEndJob(driver, vm);
if (!vm->persistent) {
virDomainObjListRemove(driver->domains, vm);
vm = NULL;
}
- goto endjob;
+ goto cleanup;
}
event = virDomainEventLifecycleNewFromObj(vm,
@@ -1279,7 +1280,6 @@ lxcDomainCreateXMLWithFiles(virConnectPtr conn,
if (dom)
dom->id = vm->def->id;
- endjob:
virLXCDomainObjEndJob(driver, vm);
cleanup:
--
2.8.4
8 years, 3 months