]> xenbits.xensource.com Git - libvirt.git/log
libvirt.git
7 years agoconf: Rework/rename virDomainObjListFindByUUIDRef
John Ferlan [Fri, 9 Mar 2018 15:47:46 +0000 (10:47 -0500)]
conf: Rework/rename virDomainObjListFindByUUIDRef

Now that every caller is using virDomainObjListFindByUUIDRef,
let's just remove it and keep the name as virDomainObjListFindByUUID.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
7 years agogit: add config file telling git-publish how to send patches
Daniel P. Berrangé [Wed, 18 Apr 2018 17:30:38 +0000 (18:30 +0100)]
git: add config file telling git-publish how to send patches

The "git-publish" tool is a useful git extension for sending patch
series for code review. It automatically creates versioned tags
each time code on a branch is sent, so that there is a record of
each version. It also remembers the cover letter so it does not
need re-entering each time the series is reposted.

With this config file present it is now sufficient[1] to run

  $ git publish

to send all patches in a branch to the list for review

[1] Assuming your $HOME/.gitconfig has an SMTP server listed
at least e.g.

   [sendemail]
        smtpserver = smtp.example.com

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agotests: Xen: use qemu-system-i386 for emulator
Jim Fehlig [Wed, 11 Apr 2018 16:38:14 +0000 (10:38 -0600)]
tests: Xen: use qemu-system-i386 for emulator

Many of the old xm and sexpr test files used qemu-dm as the emulator.
Modern Xen systems no longer use the old, forked qemu-dm, instead
preferring the distro provided qemu or an "upstream" qemu that is
built when the Xen tools are built. This qemu is typically installed
in /usr/lib/xen/bin/qemu-system-i386.

The libxl test files already use /usr/lib/xen/bin/qemu-system-i386.
For consistency, change the old test files to use the same emulator

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agovz: Use virDomainObjListFindBy{UUID|ID}Ref
John Ferlan [Fri, 9 Mar 2018 15:30:47 +0000 (10:30 -0500)]
vz: Use virDomainObjListFindBy{UUID|ID}Ref

For vzDomainLookupByID and vzDomainLookupByUUID let's
return a locked and referenced @vm object so that callers
can then use the common and more consistent virDomainObjEndAPI
in order to handle cleanup rather than needing to know that the
returned object is locked and calling virObjectUnlock.

The LookupByName already returns the ref counted and locked object,
so this will make things more consistent.

Also adjust the prlsdkHandle{VmState|VmRemoved|Perf}Event APIs
in the same manner.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
7 years agovz: Unify vzDomObjFromDomain{Ref}
John Ferlan [Fri, 9 Mar 2018 14:59:00 +0000 (09:59 -0500)]
vz: Unify vzDomObjFromDomain{Ref}

Rather than have two API's doing different things for different
callers, let's make one API that will always return a locked and
ref counted object. That way, the callers will always know that
they must call virDomainObjEndAPI and not have to decide whether
they should call virObjectUnlock instead.

This will make things consistent with LookupByName which returns
the locked and ref counted object.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
7 years agovmware: Use virDomainObjListFindBy{UUID|ID}Ref
John Ferlan [Mon, 23 Oct 2017 17:25:34 +0000 (13:25 -0400)]
vmware: Use virDomainObjListFindBy{UUID|ID}Ref

For vmwareDomObjFromDomainLocked and vmwareDomainLookupByID
let's return a locked and referenced @vm object so that callers
can then use the common and more consistent virDomainObjEndAPI
in order to handle cleanup rather than needing to know that the
returned object is locked and calling virObjectUnlock.

The LookupByName already returns the ref counted and locked object,
so this will make things more consistent.

For vmwareDomainUndefineFlags and vmwareDomainShutdownFlags since
virDomainObjListRemove will return an unlocked object, we need to
relock before making the EndAPI call.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
7 years agovmware: Add more descriptive error message on Find failure
John Ferlan [Fri, 9 Mar 2018 14:46:47 +0000 (09:46 -0500)]
vmware: Add more descriptive error message on Find failure

If vmwareDomainLookupByID or vmwareDomainLookupByName fails
to find a vm, let's be a bit more descriptive by providing
the failing id or name in the error message.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
7 years agovmware: Create accessors to virDomainObjListFindByUUID
John Ferlan [Mon, 23 Oct 2017 17:19:46 +0000 (13:19 -0400)]
vmware: Create accessors to virDomainObjListFindByUUID

Rather than repeat code throughout, create and use a couple of
accessors in order to lookup by UUID.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
7 years agovmware: Properly clean up in vmwareDomainLookupByName
John Ferlan [Fri, 9 Mar 2018 14:48:07 +0000 (09:48 -0500)]
vmware: Properly clean up in vmwareDomainLookupByName

The virDomainObjListFindByName returns a locked and reffed
domain object, all we did was unlock it, leaving an extra
ref. Use the virDomainObjEndAPI to cleanup instead.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoremote: always build generated source files
Daniel P. Berrangé [Fri, 20 Apr 2018 10:44:35 +0000 (11:44 +0100)]
remote: always build generated source files

The generated source files for dispatching libvirtd RPC messages contain
translations and are thus listed in POTFILES. This means they are
required in order to build libvirt.pot. Rather than changing the files
that go into libvirt.pot dynamically, just unconditionally build the
remote driver sources so they are always available for building
libvirt.pot. This ensures we don't silently loose translation messages
based on configure args.

This fixes the mingw build which needs to create libvirt.pot but has
libvirtd disabled.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agoformatdomain.html.in: Wrap long lines
Michal Privoznik [Fri, 20 Apr 2018 08:55:12 +0000 (10:55 +0200)]
formatdomain.html.in: Wrap long lines

While working on discard feature I've noticed some long lines
that should be wrapped.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovmx: write cpuid.coresPerSocket back from CPU topology
Pino Toscano [Thu, 19 Apr 2018 13:03:38 +0000 (15:03 +0200)]
vmx: write cpuid.coresPerSocket back from CPU topology

When writing the VMX file from the domain XML, write
cpuid.coresPerSocket if there is a specified CPU topology in the guest.

Use the domain XML of esx-in-the-wild-9 in vmx2xml as testcase for
xml2vmxtest.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
Acked-by: Richard W.M. Jones <rjones@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
7 years agovmx: convert cpuid.coresPerSocket for CPU topology
Pino Toscano [Thu, 19 Apr 2018 13:03:37 +0000 (15:03 +0200)]
vmx: convert cpuid.coresPerSocket for CPU topology

Convert the cpuid.coresPerSocket key as both number of CPU sockets, and
cores per socket.

Add the VMX file attached to RHBZ#1568148 as testcase esx-in-the-wild-9;
adapt the resulting XML of testcase esx-in-the-wild-8 to the CPU
topology present in that VMX.

https://bugzilla.redhat.com/show_bug.cgi?id=1568148

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
Acked-by: Richard W.M. Jones <rjones@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
7 years agotests: Fix incorrect check for virNetServerClientClose call
John Ferlan [Thu, 19 Apr 2018 18:37:00 +0000 (14:37 -0400)]
tests: Fix incorrect check for virNetServerClientClose call

Commit id '6df5d777' somehow during the move from one branch to
another added an erroneous '!'...

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agouml: Use virDomainObjListFindBy{UUID|ID}Ref
John Ferlan [Mon, 23 Oct 2017 17:14:13 +0000 (13:14 -0400)]
uml: Use virDomainObjListFindBy{UUID|ID}Ref

For umlDomObjFromDomainLocked and umlDomainLookupByID let's
return a locked and referenced @vm object so that callers
can then use the common and more consistent virDomainObjEndAPI
in order to handle cleanup rather than needing to know that the
returned object is locked and calling virObjectUnlock. This
means for some consumers we need to relock the @dom after a
virDomainObjListRemove, but before calling virDomainObjEndAPI.

The LookupByName already returns the ref counted and locked object,
so this will make things more consistent.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agouml: Add more specific error message on failed FindBy call
John Ferlan [Fri, 9 Mar 2018 14:33:26 +0000 (09:33 -0500)]
uml: Add more specific error message on failed FindBy call

Rather than an empty failed to find, let's provide a bit more
knowledge about what we failed to find by using the name string
or the id value.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agouml: Create accessors to virDomainObjListFindByUUID
John Ferlan [Mon, 23 Oct 2017 17:05:18 +0000 (13:05 -0400)]
uml: Create accessors to virDomainObjListFindByUUID

Rather than repeat code throughout, create and use a couple of
accessors in order to lookup by UUID. This will also generate
a common error message including the failed uuidstr for lookup
rather than just returning nothing in some instances.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agouml: Fix umlInotifyEvent dom object handling
John Ferlan [Tue, 27 Mar 2018 18:26:02 +0000 (14:26 -0400)]
uml: Fix umlInotifyEvent dom object handling

The virDomainObjListFindByName will return a locked and reffed
object. If we call virDomainObjListRemove that will unlock the
object upon return, thus we need to relock the object before
making the call to virDomainObjEndAPI.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agouml: Fix umlProcessAutoDestroyDom dom processing
John Ferlan [Tue, 27 Mar 2018 14:18:06 +0000 (10:18 -0400)]
uml: Fix umlProcessAutoDestroyDom dom processing

There's no need to check if @dom exists before trying to
call virDomainObjListRemove since it must exist due to
prior checks.

Additionally, if we do remove the @dom, then set it to NULL
so that the virObjectUnlock isn't referencing something that
is deleted.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agoqemu: Fix possible memory leak in migration param processing
John Ferlan [Tue, 17 Apr 2018 15:43:30 +0000 (11:43 -0400)]
qemu: Fix possible memory leak in migration param processing

If virJSONValueArraySize(caps) <= 0, then we will still need to
virJSONValueFree(caps) because qemuMonitorSetMigrationCapabilities
won't consume it.

Found by Coverity

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agotests: Don't call virNetServerClientClose without valid client
John Ferlan [Mon, 2 Apr 2018 11:19:38 +0000 (07:19 -0400)]
tests: Don't call virNetServerClientClose without valid client

If @client hasn't been opened, then don't call virNetServerClientClose
since that'll cause certain failure.

Found by Coverity

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agotests: Return failure if log not fopen'd
John Ferlan [Mon, 2 Apr 2018 11:13:33 +0000 (07:13 -0400)]
tests: Return failure if log not fopen'd

If @log is not fopen'd then, going to cleanup and calling fclose
will make for an unhappy callee. So just fail immediately instead
since there's nothing to clean up.

Found by Coverity

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agoremote: Fix usage of ATTRIBUTE_FALLTHROUGH
John Ferlan [Mon, 2 Apr 2018 11:09:28 +0000 (07:09 -0400)]
remote: Fix usage of ATTRIBUTE_FALLTHROUGH

Move to within the #if since the #else portion ends with a goto
and that raised concern by Coverity.

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agoconf: Add error checking to virDomainSnapshotDiskDefFormat
John Ferlan [Wed, 8 Nov 2017 12:13:20 +0000 (07:13 -0500)]
conf: Add error checking to virDomainSnapshotDiskDefFormat

Commit id '43f2ccdc' called virDomainDiskSourceDefFormatInternal
rather than formatting the the disk source inline. However, it
did not handle the case where the helper failed. Over time the
helper has been renamed to virDomainDiskSourceFormat. Similar to
other consumers, if virDomainDiskSourceFormat fails, then the
formatting could be off, so it's better to fail than to continue
on with some possibly bad data. Alter the function and the caller
to check status and jump to error in that case.

Found by Coverity

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agoqemu_capabilities: Separate out device props fetching
Michal Privoznik [Thu, 12 Apr 2018 12:39:43 +0000 (14:39 +0200)]
qemu_capabilities: Separate out device props fetching

The code is generic enough to be reused. Move it into a
separate function.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agoqemu_capabilities: s/ObjectProps/DeviceProps/g
Michal Privoznik [Thu, 12 Apr 2018 11:31:03 +0000 (13:31 +0200)]
qemu_capabilities: s/ObjectProps/DeviceProps/g

So far all the properties we are trying to fetch are device
properties, i.e. -device $dev on qemu command line. Change
misleading variable names to express what's queried for better.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agoqemu: Figure out nodeset bitmap size correctly
Andrea Bolognani [Tue, 10 Apr 2018 14:12:05 +0000 (16:12 +0200)]
qemu: Figure out nodeset bitmap size correctly

The current private XML parsing code relies on the assumption
that NUMA node IDs start from 0 and are densely allocated,
neither of which is necessarily the case.

Change it so that the bitmap size is dynamically calculated by
looking at NUMA node IDs instead, which ensures all nodes will
be able to fit and thus the bitmap will be parsed successfully.

Update one of the test cases so that it would fail with the
previous approach, but passes with the new one.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1490158

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agotests: Create full host NUMA topology in more cases
Andrea Bolognani [Tue, 10 Apr 2018 15:42:14 +0000 (17:42 +0200)]
tests: Create full host NUMA topology in more cases

vircapstest has code to add a full host NUMA topology, that
is, one that includes all information about nodes and CPUs
including IDs; testQemuCapsInit(), which is used to create a
mock virCapsPtr for QEMU tests, however, just fakes it by
setting nnumaCell_max to some number.

While the latter approach has served us well so far, we're
going to need all the information to be filled in soon. In
order to do that, we can just move the existing code from
vircapstest to testutils and, with some renaming and
trivial tweaking, use it as-is.

Interestingly, the NUMA topology generated by the function
is rigged up so that the NUMA nodes aren't (necessarily)
numbered starting from 0, which is a nice way to spot
mistaken assumptions in our codebase.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agoqemuDomainObjPrivateDataClear: Don't leak @migParams
Michal Privoznik [Wed, 18 Apr 2018 08:49:00 +0000 (10:49 +0200)]
qemuDomainObjPrivateDataClear: Don't leak @migParams

Allocated in qemuMigrationParamsNew() we need to free
priv->job.migParams when no longer needed.

==8061== 234 (192 direct, 42 indirect) bytes in 1 blocks are definitely lost in loss record 112 of 123
==8061==    at 0x4C2CF26: calloc (vg_replace_malloc.c:711)
==8061==    by 0x5325D05: virAlloc (viralloc.c:144)
==8061==    by 0x1984F9: qemuMigrationParamsNew (qemu_migration_params.c:218)
==8061==    by 0x19A352: qemuMigrationParamsParse (qemu_migration_params.c:1185)
==8061==    by 0x1604D8: qemuDomainObjPrivateXMLParseJob (qemu_domain.c:2390)
==8061==    by 0x160AE9: qemuDomainObjPrivateXMLParse (qemu_domain.c:2517)
==8061==    by 0x5419EAE: virDomainObjParseXML (domain_conf.c:20442)
==8061==    by 0x541A25E: virDomainObjParseNode (domain_conf.c:20555)
==8061==    by 0x541A2FC: virDomainObjParseFile (domain_conf.c:20574)
==8061==    by 0x13607D: testCompareStatusXMLToXMLFiles (qemuxml2xmltest.c:75)
==8061==    by 0x14F3E8: virTestRun (testutils.c:180)
==8061==    by 0x14DCD0: mymain (qemuxml2xmltest.c:1200)

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agopo: attempt to fix srcdir != builddir builds
Daniel P. Berrangé [Thu, 19 Apr 2018 13:52:51 +0000 (14:52 +0100)]
po: attempt to fix srcdir != builddir builds

The .pot, .po and .gmo files are slightly unusual in that we generate
them in the srcdir when building form git. This is because they'll be
bundled in the tar archive, so a build-from-tar will see them in srcdir.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language zu
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:37 +0000 (16:02 +0100)]
po: minimize language zu

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language zh_TW
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:37 +0000 (16:02 +0100)]
po: minimize language zh_TW

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language zh_HK
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:37 +0000 (16:02 +0100)]
po: minimize language zh_HK

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language zh_CN
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:37 +0000 (16:02 +0100)]
po: minimize language zh_CN

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language yo
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language yo

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language wba
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language wba

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language vi
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language vi

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ur
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language ur

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language uk
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language uk

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language tw
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language tw

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language tr
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language tr

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language th
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language th

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language tg
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language tg

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language te
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language te

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ta
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:36 +0000 (16:02 +0100)]
po: minimize language ta

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language sv
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language sv

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language sr
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language sr

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language sr@latin
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language sr@latin

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language sq
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language sq

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language sl
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language sl

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language sk
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language sk

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language si
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language si

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ru
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language ru

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ro
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language ro

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language pt
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language pt

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language pt_BR
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language pt_BR

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language pl
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language pl

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language pa
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language pa

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language or
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:35 +0000 (16:02 +0100)]
po: minimize language or

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language nso
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language nso

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language nn
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language nn

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language nl
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language nl

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ne
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language ne

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language nds
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language nds

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language nb
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language nb

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language my
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language my

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ms
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language ms

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language mr
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language mr

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language mn
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language mn

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ml
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language ml

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language mk
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language mk

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language mai
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:34 +0000 (16:02 +0100)]
po: minimize language mai

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language lv
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language lv

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language lt
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language lt

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ky
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language ky

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language kw@uccor
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language kw@uccor

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language kw
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language kw

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language kw@kkcor
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language kw@kkcor

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language kw_GB
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language kw_GB

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ko
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language ko

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language kn
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language kn

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language km
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language km

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language kk
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language kk

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ka
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language ka

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ja
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language ja

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language it
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:33 +0000 (16:02 +0100)]
po: minimize language it

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language is
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language is

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ilo
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language ilo

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language id
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language id

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ia
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language ia

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language hu
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language hu

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language hr
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language hr

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language hi
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language hi

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language he
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language he

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language gu
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language gu

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language gl
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language gl

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language ga
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language ga

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language fur
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language fur

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language fr
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language fr

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
7 years agopo: minimize language fi
Daniel P. Berrangé [Fri, 6 Apr 2018 15:02:32 +0000 (16:02 +0100)]
po: minimize language fi

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>