]> xenbits.xensource.com Git - libvirt.git/log
libvirt.git
7 years agoutil: Introduce and use virObjectRWLockWrite
John Ferlan [Fri, 28 Jul 2017 14:06:55 +0000 (10:06 -0400)]
util: Introduce and use virObjectRWLockWrite

Instead of making virObjectLock be the entry point for two
different types of locks, let's create a virObjectRWLockWrite API
which will only handle the virObjectRWLockableClass objects.

Use the new virObjectRWLockWrite for the virdomainobjlist code
in order to handle the Add, Remove, Rename, and Load operations
that need to be very synchronous.

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agoutil: Rename virObjectLockRead to virObjectRWLockRead
John Ferlan [Fri, 28 Jul 2017 13:57:04 +0000 (09:57 -0400)]
util: Rename virObjectLockRead to virObjectRWLockRead

Since the class it represents is based on virObjectRWLockableClass
and in order to make sure we differentiate just in case anyone somehow
believes they could use virObjectLockRead for a virObjectLockableClass,
let's rename the API to use the RW in the name. Besides the RW locks
refer to pthread_rwlock_{init|rdlock|wrlock|unlock|destroy} while the
other locks refer to pthread_mutex_{init|lock|unlock|destroy}.

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agoqemu: fix nwfilter deadlock in qemuProcessReconnect
Pavel Hrdina [Mon, 7 Aug 2017 12:42:58 +0000 (14:42 +0200)]
qemu: fix nwfilter deadlock in qemuProcessReconnect

The correct lock order is:

  nwfilter driver lock (not used in this code path)
  nwfilter update lock
  virt driver lock (not used in this code path)
  domain object lock

but the current code have this order:

  domain object lock
  nwfilter update lock

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoqemu: fix nwfilter deadlock while reverting to snapshot
Pavel Hrdina [Mon, 7 Aug 2017 12:41:43 +0000 (14:41 +0200)]
qemu: fix nwfilter deadlock while reverting to snapshot

Introduced by commit <41127244fb90f08cf5032a5d7553f5f0390d925e>.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoconf: use virXMLPropString for Domain def parsing
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
conf: use virXMLPropString for Domain def parsing

XPath is good for random search of elements, not for accessing
attributes of one node.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoconf: use virXMLPropString for IOThread pin parsing
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
conf: use virXMLPropString for IOThread pin parsing

XPath is good for random search of elements, not for accessing
attributes of one node.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoconf: use virXMLPropString for IOThread parsing
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
conf: use virXMLPropString for IOThread parsing

XPath is good for random search of elements, not for accessing
attributes of one node.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoconf: use virXMLPropString for disk geometry parsing
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
conf: use virXMLPropString for disk geometry parsing

XPath is good for random search of elements, not for accessing
attributes of one node.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoconf: use virXMLPropString for KeyWrapCipherDef parsing
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
conf: use virXMLPropString for KeyWrapCipherDef parsing

XPath is good for random search of elements, not for accessing
attributes of one node.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoconf: cleanup virDomainChrSourceDef parsing
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
conf: cleanup virDomainChrSourceDef parsing

The @remaining variable is leftover from old code and it's not
used anymore.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agouse virXMLNodeNameEqual instead of xmlStrEqual
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
use virXMLNodeNameEqual instead of xmlStrEqual

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoutil: introduce virXMLNodeNameEqual
Pavel Hrdina [Mon, 14 Aug 2017 12:31:52 +0000 (14:31 +0200)]
util: introduce virXMLNodeNameEqual

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
7 years agoutil: Rename virResctrl to virResctrlInfo
Martin Kletzander [Thu, 10 Aug 2017 09:50:47 +0000 (11:50 +0200)]
util: Rename virResctrl to virResctrlInfo

This way later patches can add another structures with virResctrl
prefix without the meaning being even more confusing than it needs to
be.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agoutil: Make virResctrlGetCacheControlType() behave like other functions
Martin Kletzander [Wed, 2 Aug 2017 11:33:04 +0000 (13:33 +0200)]
util: Make virResctrlGetCacheControlType() behave like other functions

That means that returning negative values means error and non-negative
values differ in meaning, but are all successful.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agoMove resctrl-related code from conf/capabilities to util/virresctrl
Martin Kletzander [Tue, 25 Jul 2017 14:03:11 +0000 (16:03 +0200)]
Move resctrl-related code from conf/capabilities to util/virresctrl

It doesn't access anything from conf/ and ti will be needed to use
from other util/ places.  This split makes the separation clearer.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agotests: Fix indentation in virfilewrapper.c
Martin Kletzander [Tue, 25 Jul 2017 09:43:33 +0000 (11:43 +0200)]
tests: Fix indentation in virfilewrapper.c

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agovirxml: Fix indentation
Martin Kletzander [Tue, 25 Jul 2017 09:40:51 +0000 (11:40 +0200)]
virxml: Fix indentation

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agoutil: eliminate superfluous saveVlan check in virNetDevSetNetConfig()
Laine Stump [Sun, 13 Aug 2017 15:32:31 +0000 (11:32 -0400)]
util: eliminate superfluous saveVlan check in virNetDevSetNetConfig()

Commit 81fb440b further qualified an if statement by adding the
boolean saveVlan to the condition. Coverity pointed out that this
change in the logic eliminated the need to check saveVlan in an
argument to virAsprintf().

7 years agoutil: fix improper assignment of return value in virHostdevReadNetConfig()
Laine Stump [Sun, 13 Aug 2017 15:19:27 +0000 (11:19 -0400)]
util: fix improper assignment of return value in virHostdevReadNetConfig()

Commit 9a94af6d restructured virHostdevReadNetConfig() so that it
would manually set ret = 0 after successfully reading the device's
config, but Coverity pointed out that "ret = 0" was erroneously placed
outside of an "else" clause, meaning that the the value of ret set in
the "if" clause was unnecessarily and incorrectly overwritten.

This patch moves ret = 0 into the else clause, which should silence
Coverity.

7 years agovbox: fix typo in warning message
Guido Günther [Thu, 16 Mar 2017 08:37:10 +0000 (09:37 +0100)]
vbox: fix typo in warning message

Acked-by: Laine Stump <laine@laine.org>
7 years agoutil: check for PF online status earlier in guest startup
Laine Stump [Thu, 10 Aug 2017 19:46:38 +0000 (15:46 -0400)]
util: check for PF online status earlier in guest startup

When using a VF from an SRIOV-capable network card in a guest (either
in macvtap passthrough mode, or via VFIO PCI device assignment), The
associated PF netdev must be online in order for the VF to be usable
by the guest. The guest, however, is not able to change the state of
the PF. And libvirt *could* set the PF online as needed, but that
could lead to the host receiving unexpected IPv6 traffic (since the
default for an unconfigured interface is to participate in IPv6
autoconf). For this reason, before assigning a VF to a guest, libvirt
verifies that the related PF netdev is online - if it isn't, then we
log an error and don't allow the guest startup to continue.

Until now, this check was done during virNetDevSetNetConfig(). This
works nicely because the same function is called both for macvtap
passthrough and for VFIO device assignment. But in the case of VFIO,
the VF has already been unbound from its netdev driver by the time we
get to virNetDevSetNetConfig(), and in the case of dual port Mellanox
NICs that have their VFs setup in single port mode, the *only* way to
determine the proper PF netdev to query for online status is via the
"phys_port_id" file that is in the VF netdev's sysfs directory. *BUT*
if we've unbound the VF from the netdev driver, then it doesn't *have*
a netdev sysfs directory.

So, in order to check the correct PF netdev for online status, this
patch moved the check earlier in the setup, into
virNetDevSaveNetConfig(), which is called *before* unbinding the VF
from its netdev driver.

(Note that this implies that if you are using VFIO device assignment
for the VFs of a Mellanox NIC that has the VFs programmed in single
port mode, you must let the VFs be bound to their net driver and use
"managed='yes'" in the device definition. To be more specific, this is
only true if the VFs in single port mode are using port *2* of the PF
- if the VFs are using only port 1, then the correct PF netdev will be
arrived at by default/chance))

  This resolves: https://bugzilla.redhat.com/267191

7 years agoutil: restructure virNetDevReadNetConfig() to eliminate false error logs
Laine Stump [Thu, 10 Aug 2017 00:49:26 +0000 (20:49 -0400)]
util: restructure virNetDevReadNetConfig() to eliminate false error logs

virHostdevRestoreNetConfig() calls virNetDevReadNetConfig() to try and
read the "original config" of a netdev, and if that fails, it tries
again with a different directory/netdev name. This achieves the
desired effect (we end up finding the config wherever it may be), but
for each failure, virNetDevReadNetConfig() places a nice error message
in the system logs. Experience has shown that false-positive error
logs like this lead to erroneous bug reports, and can often mislead
those searching for *real* bugs.

This patch changes virNetDevReadNetConfig() to explicitly check if the
file exists before calling virFileReadAll(); if it doesn't exist,
virNetDevReadNetConfig() returns a success, but leaves all the
variables holding the results as NULL. (This makes sense if you define
the purpose of the function as "read a netdev's config from its config
file *if that file exists*).

To take advantage of that change, the caller,
virHostdevRestoreNetConfig() is modified to fail immediately if
virNetDevReadNetConfig() returns an error, and otherwise to try the
different directory/netdev name if adminMAC & vlan & MAC are all NULL
after the preceding attempt.

7 years agoutil: save the correct VF's info when using a dual port SRIOV NIC in single port...
Laine Stump [Tue, 8 Aug 2017 00:25:57 +0000 (20:25 -0400)]
util: save the correct VF's info when using a dual port SRIOV NIC in single port mode

Mellanox ConnectX-3 dual port SRIOV NICs present a bit of a challenge
when assigning one of their VFs to a guest using VFIO device
assignment.

These NICs have only a single PCI PF device, and that single PF has
two netdevs sharing the single PCI address - one for port 1 and one
for port 2. When a VF is created it can also have 2 netdevs, or it can
be setup in "single port" mode, where the VF has only a single netdev,
and that netdev is connected either to port 1 or to port 2.

When the VF is created in dual port mode, you get/set the MAC
address/vlan tag for the port 1 VF by sending a netlink message to the
PF's port1 netdev, and you get/set the MAC address/vlan tag for the
port 2 VF by sending a netlink message to the PF's port 2 netdev. (Of
course libvirt doesn't have any way to describe MAC/vlan info for 2
ports in a single hostdev interface, so that's a bit of a moot point)

When the VF is created in single port mode, you can *set* the MAC/vlan
info by sending a netlink message to *either* PF netdev - the driver
is smart enough to understand that there's only a single netdev, and
set the MAC/vlan for that netdev. When you want to *get* it, however,
the driver is more accurate - it will return 00:00:00:00:00:00 for the
MAC if you request it from the port 1 PF netdev when the VF was
configured to be single port on port 2, or if you request if from the
port 2 PF netdev when the VF was configured to be single port on port
1.

Based on this information, when *getting* the MAC/vlan info (to save
the original setting prior to assignment), we determine the correct PF
netdev by matching phys_port_id between VF and PF.

(IMPORTANT NOTE: this implies that to do PCI device assignment of the
VFs on dual port Mellanox cards using <interface type='hostdev'>
(i.e. if you want the MAC address/vlan tag to be set), not only must
the VFs be configured in single port mode, but also the VFs *must* be
bound to the host VF net driver, and libvirt must use managed='yes')

By the time libvirt is ready to set the new MAC/vlan tag, the VF has
already been unbound from the host net driver and bound to
vfio-pci. This isn't problematic though because, as stated earlier,
when a VF is created in single port mode, commands to configure it can
be sent to either the port 1 PF netdev or the port 2 PF netdev.

When it is time to restore the original MAC/vlan tag, again the VF
will *not* be bound to a host net driver, so it won't be possible to
learn from sysfs whether to use the port 1 or port 2 PF netdev for the
netlink commands. And again, it doesn't matter which netdev you
use. However, we must keep in mind that we saved the original settings
to a file called "${PF}_${VFNUM}". To solve this problem, we just
check for the existence of ${PF1}_${VFNUM} and ${PF2}_${VFNUM}, and
use whichever one we find (since we know that only one can be there)

7 years agoutil: match phys_port_id when converting PF-netdev to/from VF-netdev
Laine Stump [Mon, 31 Jul 2017 05:55:49 +0000 (01:55 -0400)]
util: match phys_port_id when converting PF-netdev to/from VF-netdev

This patch updates functions in netdev.c to pay attention to
phys_port_id. It uses the new function virNetDevGetPhysPortID() to
learn the phys_port_id of a VF or PF, then sends that info to
virPCIGetNetName(), which has newly been modified to take an optional
phys_port_id.

7 years agoutil: make virPCIGetNetName() more versatile
Laine Stump [Mon, 31 Jul 2017 04:21:45 +0000 (00:21 -0400)]
util: make virPCIGetNetName() more versatile

A single PCI device may have multiple netdevs associated with it. Each
of those netdevs will have a different phys_port_id entry in
sysfs. This patch modifies virPCIGetNetName() to allow selecting one
of the potential many netdevs in two different ways:

1) by setting the "idx" argument, the caller can select the 1st (0),
2nd (1), etc. netdev from the PCI device's net subdirectory.

2) If the physPortID arg is set (to a null-terminated string) then
virPCIGetNetName() returns the netdev that has that phys_port_id in
the sysfs file of the same name in the netdev's directory.

7 years agoutil: Fix const'ness of 1st arg to virPCIGetNetName()
Laine Stump [Mon, 7 Aug 2017 02:48:59 +0000 (22:48 -0400)]
util: Fix const'ness of 1st arg to virPCIGetNetName()

The first arg isn't modified in the function, so it should be const.

7 years agoutil: new function virNetDevGetPhysPortID()
Laine Stump [Mon, 31 Jul 2017 03:32:43 +0000 (23:32 -0400)]
util: new function virNetDevGetPhysPortID()

On Linux each network device *can* (but not necessarily *does*) have
an attribute called phys_port_id which can be read from the file of
that name in the netdev's sysfs directory. The examples I've seen have
been a many-digit hexadecimal number (as an ASCII string).

This value can be useful when a single PCI device is associated with
multiple netdevs (e.g a dual port Mellanox SR-IOV NIC - this card has
a single PCI Physical Function (PF), and that PF has two netdevs
associated with it (the "net" subdirectory of the PF in sysfs has two
links rather than the usual single link to a netdev directory). Each
of the PF netdevs has a different phys_port_id. The Virtual Functions
(VF) are similar - the PF (a PCI device) has "n" VFs (also each of
these is a PCI device), each VF has two netdevs, and each of the VF
netdevs points back to the VF PCI device (with the "device" entry in
its sysfs directory) as well as having a phys_port_id matching the PF
netdev it is associated with.

virNetDevGetPhysPortID() simply attempts to read the phys_port_id for
the given netdev and return it to the caller. If this particular
netdev driver doesn't support phys_port_id, it returns NULL (*not* a
NULL-terminated string, but a NULL pointer) but still counts it as a
success.

7 years agoapparmor, libvirt-qemu: Allow QEMU to gather information about available host resources.
intrigeri [Tue, 8 Aug 2017 21:57:26 +0000 (21:57 +0000)]
apparmor, libvirt-qemu: Allow QEMU to gather information about available host resources.

7 years agom4: workaround clang/glibc problem with isnan()
Daniel P. Berrange [Fri, 11 Aug 2017 16:23:56 +0000 (17:23 +0100)]
m4: workaround clang/glibc problem with isnan()

When building libvirt with clang we get bogus warnings about
'double' being promoted to 'long double' when calling isnan().

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

Detect this broken isnan() / compiler combination and disable
the -Wdouble-promotion flag.

Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agoqemuBuildMemoryBackendStr: Handle one more corner case
Michal Privoznik [Tue, 8 Aug 2017 14:51:30 +0000 (16:51 +0200)]
qemuBuildMemoryBackendStr: Handle one more corner case

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

This code is so complicated because we allow enabling the same
bits at many places. Just like in this case: huge pages can be
enabled by global <hugepages/> element under <memoryBacking> or
on per <memory/> basis. To complicate things a bit more, users
are allowed to omit the page size which case the default page
size is used. And this is what is causing this bug. If no page
size is specified, @pagesize is keeping value of zero throughout
whole function. Therefore we need yet another boolean to hold
[use, don't use] information as we can't sue @pagesize for that.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
7 years agovirhostdevtest: Don't leak @mgr->activeSCSIHostdevs
Michal Privoznik [Thu, 10 Aug 2017 07:14:36 +0000 (09:14 +0200)]
virhostdevtest: Don't leak @mgr->activeSCSIHostdevs

So the hostdev manager has some lists to keep track which devices
are active (=assigned to a domain) or inactive. The manager and
its lists are allocated in myInit and freed in myCleanup but one
of them (activeSCSIHostdevs) was missing. Also, the order in
which the cleanup was done doesn't make it easy to spot it,
therefore reoder it.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovircgrouptest: Don't leak @cgroup
Michal Privoznik [Thu, 10 Aug 2017 07:13:36 +0000 (09:13 +0200)]
vircgrouptest: Don't leak @cgroup

In these test cases we create internal representation of cgroup,
however, never free it.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agosecurityselinuxtest: Don't leak @mgr
Michal Privoznik [Thu, 10 Aug 2017 07:07:31 +0000 (09:07 +0200)]
securityselinuxtest: Don't leak @mgr

The security manager is created so that test cases can use it.
However, it is never released.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agotestCompareMemLock: Use correct free function for domain def
Michal Privoznik [Thu, 10 Aug 2017 06:25:04 +0000 (08:25 +0200)]
testCompareMemLock: Use correct free function for domain def

virDomainDef is not an instance of virObject thus
virObjectUnref() is not the correct function to be called.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovirDomainNetDefClear: Free @coalesce
Michal Privoznik [Thu, 10 Aug 2017 06:22:48 +0000 (08:22 +0200)]
virDomainNetDefClear: Free @coalesce

In virDomainNetDefParseXML() the def->coalesce is parsed and
allocated by virDomainNetDefCoalesceParseXML() but in fact it's
never freed .

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agoqemuDomainUndefineFlags: unlink nvram file regardless of domain state
Michal Privoznik [Mon, 7 Aug 2017 11:18:23 +0000 (13:18 +0200)]
qemuDomainUndefineFlags: unlink nvram file regardless of domain state

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

Currently, there's a bug when undefining a domain with NVRAM
store. Basically, the unlink() of the NVRAM store file happens
during the undefine procedure iff domain is inactive. So, if
domain is running and undefine is called the file is left behind.
It won't be removed in the domain cleanup process either
(qemuProcessStop). One of the solutions is to remove if
regardless of the domain state and rely on qemu having the file
opened. This still has a downside that if the domain is defined
back the NVRAM store file is going to be new, any changes to the
current one are lost (just like with any other file that is
deleted while a process has it opened). But is it really a
downside?

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agodocs: Add "PCI topology and hotplug" guidelines
Andrea Bolognani [Tue, 25 Jul 2017 07:34:53 +0000 (09:34 +0200)]
docs: Add "PCI topology and hotplug" guidelines

For all machine types except i440fx, making a guest hotplug
capable requires some sort of planning. Add some information
to help users make educated choices when defining the PCI
topology of guests.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
7 years agointroduce virConfReadString
Ján Tomko [Mon, 7 Aug 2017 15:12:02 +0000 (17:12 +0200)]
introduce virConfReadString

Rewrite virConfReadMem to take a null-terminated string.
All the callers were calling strlen on it anyway.

7 years agoconf: check rombar against VIR_DOMAIN_TRISTATE_SWITCH_ABSENT
Ján Tomko [Wed, 2 Aug 2017 15:23:08 +0000 (17:23 +0200)]
conf: check rombar against VIR_DOMAIN_TRISTATE_SWITCH_ABSENT

Make the comparison explicit.

7 years agodocs: force content in <script> element
Daniel P. Berrange [Tue, 8 Aug 2017 09:58:50 +0000 (10:58 +0100)]
docs: force content in <script> element

If there's no content in <script></script>, the XSTL generator
will turn it into <script/> which is not permitted in XHTML.
Adding a single whitespace is enough to guarantee an explicit
closing tag. Without this, the scripts never get loaded by
the browser.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agohyperv: Silence clang alignment warnings in serialization code
Sri Ramanujam [Fri, 28 Jul 2017 16:19:19 +0000 (12:19 -0400)]
hyperv: Silence clang alignment warnings in serialization code

Slight refactor of the WMI serialization code to minimize mixing
openwsman and libxml2 APIs that triggered clang alignment warnings.

The only usage of libxml2 APIs now is in creating CDATA blocks,
because the openwsman API does not provide that functionality. The
clang alignment warning in this case is silenced by casting to a
void pointer first.

7 years agohyperv: Correct number of milliseconds in five minutes
Sri Ramanujam [Fri, 28 Jul 2017 16:23:26 +0000 (12:23 -0400)]
hyperv: Correct number of milliseconds in five minutes

7 years agotests: add further XML namespace test
Daniel P. Berrange [Mon, 10 Jul 2017 10:13:05 +0000 (11:13 +0100)]
tests: add further XML namespace test

Validate that we can pass QEMU command line options using a default
namespace, instead of a prefixed namespace

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: make website responsive for mobile devices
Daniel P. Berrange [Fri, 4 Aug 2017 12:29:43 +0000 (13:29 +0100)]
docs: make website responsive for mobile devices

The website does not look good in a mobile device as the text is
far too small and the layout assumes a wide screen.

Make the style dynamically adapt based on viewport size, so a
mobile device gets a layout more suited to its dimensions,
also changing "Learn" to "Docs"

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agoRemove bogus warning about vir$OBJECTGetConnect functions
Daniel P. Berrange [Fri, 2 Jun 2017 12:09:49 +0000 (13:09 +0100)]
Remove bogus warning about vir$OBJECTGetConnect functions

The API docs for the various vir$OBJECTGetConnect functions
contain a warning

  WARNING: When writing libvirt bindings in other languages, do
  not use this function.  Instead, store the connection and
  the domain object together.

There is no reason why language bindings should not use this
method, and indeed the Perl, Python, and Go bindings all use
these methods.

This warning was originally added back in

  commit 3edb4bc9fb1b451599df58420d61ffd73633cead
  Author: Daniel Veillard <veillard@redhat.com>
  Date:   Tue Jul 24 15:32:55 2007 +0000

    * libvirt.spec.in NEWS docs/* po/*: preparing release 0.3.1
    * src/libvirt.c python/generator.py: some cleanup and warnings
      from Richard W.M. Jones

IIUC, the rational was that these APIs do not need to be
directly exposed to the non-C language, as the language
can expose the same concept itself by storing the original
virConnectPtr object alongside the virDomainPtr.  There's
no reason to mandate such an approach though - it is valid
for languages to expose this directly if that suits their
needs better.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agovirdbustest: Don't leak @out_strv1
Michal Privoznik [Fri, 4 Aug 2017 13:27:45 +0000 (15:27 +0200)]
virdbustest: Don't leak @out_strv1

In testMessageSingleArrayRef the string is doubly referenced.
Therefore we have to free also the first pointer to the string.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agoqemuhotplugtest: Don't leak @vm
Michal Privoznik [Fri, 4 Aug 2017 13:25:40 +0000 (15:25 +0200)]
qemuhotplugtest: Don't leak @vm

Some tests take already prepared domain from previous tests. In
this case, the domain is freed by the first test that doesn't
keep the domain. However, if there's no such test case domain is
leaked.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovirTestCompareToFile: Don't access memory we don't own
Michal Privoznik [Fri, 4 Aug 2017 13:22:53 +0000 (15:22 +0200)]
virTestCompareToFile: Don't access memory we don't own

After reading the contents of a file some cleanup is performed.
However, the check for it might access a byte outside of the
string - if the file is empty in the first place. Then strlen()
is zero.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agoqemuDomainObjPrivateFree: Free @machineName
Michal Privoznik [Fri, 4 Aug 2017 13:17:39 +0000 (15:17 +0200)]
qemuDomainObjPrivateFree: Free @machineName

We're storing the machine name in @priv but free it just in
qemuProcessStop, Therefore this may leak.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovirNodeDevCapCCWParseXML: Free temporary variables
Michal Privoznik [Fri, 4 Aug 2017 13:11:59 +0000 (15:11 +0200)]
virNodeDevCapCCWParseXML: Free temporary variables

Again, we are using @cssid, @ssid and @devno to store some
temporary strings, but never free it.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovirDomainDefParseXML: Free @tmp
Michal Privoznik [Fri, 4 Aug 2017 13:10:08 +0000 (15:10 +0200)]
virDomainDefParseXML: Free @tmp

When parsing <ioapic> feature we're using @tmp to store some
temporary string but never free it.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovirDomainDefFree: Don't leak initenv name and value
Michal Privoznik [Fri, 4 Aug 2017 13:06:39 +0000 (15:06 +0200)]
virDomainDefFree: Don't leak initenv name and value

When parsing boot options from domain XML in
virDomainDefParseBootOptions() initenv id stored to:

    def->os.initenv[i]->name
    def->os.initenv[i]->value

But these are never freed.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agotools: make wireshark build quiet
Daniel P. Berrange [Fri, 4 Aug 2017 17:12:13 +0000 (18:12 +0100)]
tools: make wireshark build quiet

Use $(AM_V_GEN) when running wireshark related tools

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: bhyve: document autoport support
Roman Bogorodskiy [Sun, 30 Jul 2017 10:01:03 +0000 (14:01 +0400)]
docs: bhyve: document autoport support

 - Update the driver page with the information about using
   autport for VNC ports
 - Add a news entry

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
7 years agobhyve: Add support for VNC autoport
Alexander Nusov [Mon, 8 May 2017 10:36:43 +0000 (13:36 +0300)]
bhyve: Add support for VNC autoport

This patch adds support for automatic VNC port assignment for bhyve guests.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
7 years agolibxl: Add a test suite for libxl_domain_config generator
Jim Fehlig [Tue, 1 Aug 2017 13:17:51 +0000 (15:17 +0200)]
libxl: Add a test suite for libxl_domain_config generator

The libxl library allows a libxl_domain_config object to be serialized
from/to a JSON string. Use this to allow testing of the XML to
libxl_domain_config conversion process. Test XML is converted to
libxl_domain_config, which is then serialized to json. A json template
corresponding to the test XML is converted to a libxl_domain_config
object using libxl_domain_config_from_json(), and then serialized
back to json using libxl_domain_config_to_json(). The two json
docs are then compared.

Using libxl to convert the json template to a libxl_domain_config
object and then back to json provides a simple way to account for
any changes or additions to the json representation across Xen
releases.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
[update to v3.5.0-rc1, improve error reporting, use /bin/true emulator]
Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
7 years agoremote: increase max storage pools, nwfilters & snapshots to 16384
Daniel P. Berrange [Thu, 11 May 2017 10:34:21 +0000 (11:34 +0100)]
remote: increase max storage pools, nwfilters & snapshots to 16384

Most other top level objects have already had their limits increased
to 16384. Increase the storage pool, nwfilter & snapshot object
limits to match. For snapshots at least, we have seen hosts which
exceeded the current limit

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agorpm: conditionalize dep on perl for perl-interpretor split in F27
Daniel P. Berrange [Wed, 2 Aug 2017 09:51:36 +0000 (10:51 +0100)]
rpm: conditionalize dep on perl for perl-interpretor split in F27

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agocpu: define sub-leaf 0 for leaf 7 in cpu_map.xml
Marek Marczykowski-Górecki [Tue, 4 Jul 2017 03:03:44 +0000 (05:03 +0200)]
cpu: define sub-leaf 0 for leaf 7 in cpu_map.xml

CPUID leaf 7 is sub-leaf aware. Add missing attribute.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
7 years agoqemu: command: explicitly error for non-x86 default CPU
Cole Robinson [Thu, 13 Jul 2017 19:15:38 +0000 (15:15 -0400)]
qemu: command: explicitly error for non-x86 default CPU

The code only currently handles writing an x86 default -cpu
argument, and doesn't know anything about other architectures.
Let's make this explicit rather than leaving ex. qemu ppc64 to
throw an error about -cpu qemu64

Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
7 years agoqemu: command: rework adding of default cpu model
Cole Robinson [Thu, 13 Jul 2017 14:39:13 +0000 (10:39 -0400)]
qemu: command: rework adding of default cpu model

Certain XML features that aren't in the <cpu> block map to -cpu
flags on the qemu cli. If one of these is specified but the user
didn't explicitly pass an XML <cpu> model, we need to format a
default model on the command line.

The current code handles this by sprinkling this default cpu handling
among all the different flag string formatting. Instead, switch it
to do this just once.

This alters some test output slightly: the previous code would
write the default -cpu in some cases when no flags were actually
added, so the output was redundant.

Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
7 years agoconf: fix formatting of smartcard devices
Ján Tomko [Thu, 3 Aug 2017 12:26:47 +0000 (14:26 +0200)]
conf: fix formatting of smartcard devices

My commit 0c1d863 broke formatting of passthrough smartcard devices:
<smartcard mode='passthrough' type='spicevmc'/>

resulted in invalid XML:
    <smartcard mode='passthrough'>
       type='spicevmc'>
      <address type='ccid' controller='0' slot='0'/>
    </smartcard>

Split out chardev source formatting function into two -
one formatting the attributes and other formatting the subelements.

Reported-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
7 years agotests: deterministichash: Make hash tables arch-independent
Peter Krempa [Wed, 2 Aug 2017 15:23:51 +0000 (17:23 +0200)]
tests: deterministichash: Make hash tables arch-independent

It turns out that our implementation of the hashing function is
endian-dependent and thus if used on various architectures the testsuite
may have different results. Work this around by mocking virHashCodeGen
to something which does not use bit operations instead of just setting a
deterministic seed.

7 years agoutil: hash: Make virHashCodeGen mockable
Peter Krempa [Wed, 2 Aug 2017 15:31:14 +0000 (17:31 +0200)]
util: hash: Make virHashCodeGen mockable

Export the function from the util module so that dynamic linking can
override it.

7 years agoutil: hash: Include stdbool.h in the header file
Peter Krempa [Wed, 2 Aug 2017 15:28:55 +0000 (17:28 +0200)]
util: hash: Include stdbool.h in the header file

The functions declared in virhash.h return bool, but stdbool.h was not
included.

7 years agoqemu: command: align disk serial check to schema
Nikolay Shirokovskiy [Tue, 28 Mar 2017 08:10:53 +0000 (11:10 +0300)]
qemu: command: align disk serial check to schema

Disk serial schema has extra '.+' allowed characters in comparison
with check in code. Looks like there is no reason for that as qemu
allows any character AFAIK for serial. This discrepancy is originated
in commit id '85d15b51' where the ability to add serial was added.

Alter the disk-serial test to add a disk with all the possible
characters listed as the serial value.

7 years agoqemu: Check for existence of provided *_tls_x509_cert_dir
John Ferlan [Thu, 29 Jun 2017 12:27:55 +0000 (08:27 -0400)]
qemu: Check for existence of provided *_tls_x509_cert_dir

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

Introduce virQEMUDriverConfigTLSDirResetDefaults in order to check
if the defaultTLSx509certdir was changed, then change the default
for any other *TLSx509certdir that was not set to the default default.

Introduce virQEMUDriverConfigValidate to validate the existence of
any of the *_tls_x509_cert_dir values that were uncommented/set,
incuding the default.

Update the qemu.conf description for default to describe the consequences
if the default directory path does not exist.

Signed-off-by: John Ferlan <jferlan@redhat.com>
7 years agodocs: Fix syntax-check error
John Ferlan [Wed, 2 Aug 2017 18:58:31 +0000 (14:58 -0400)]
docs: Fix syntax-check error

Commit id '94d2d6429' caused a syntax-error check to fail:

docs/Makefile.am:276: $(AM_V_GEN)sed -e '/<span id="php_placeholder"><\/span>/r '"$(srcdir)/$@.code.in" \
maint.mk: Wrap long lines in Makefiles
cfg.mk:721: recipe for target 'sc_prohibit_long_lines' failed
make: *** [sc_prohibit_long_lines] Error 1
make: *** Waiting for unfinished jobs....

Altered the line to put another line wrap between sed and -e

7 years agodocs: Fix syntax-check error
John Ferlan [Wed, 2 Aug 2017 18:57:35 +0000 (14:57 -0400)]
docs: Fix syntax-check error

commit id '40cb5581' caused syntax-check error:

prohibit_empty_lines_at_EOF
docs/manifest.json
maint.mk: empty line(s) or no newline at EOF
maint.mk:929: recipe for target 'sc_prohibit_empty_lines_at_EOF' failed
make: *** [sc_prohibit_empty_lines_at_EOF] Error 1

I just edited the file and replaced the closing } and it made things happy

7 years agodocs: add full set of "favicon" files to support modern clients
Daniel P. Berrange [Wed, 26 Jul 2017 17:22:11 +0000 (18:22 +0100)]
docs: add full set of "favicon" files to support modern clients

Use of the relation "shortcut" for a favicon was an Internet
Explorer only feature. Other browsers just require "icon".

The new icons & metadata are generated using

  https://realfavicongenerator.net/

which is user tested to work well across all modern clients

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: explicitly declare pages as being UTF-8 format
Daniel P. Berrange [Wed, 26 Jul 2017 17:20:26 +0000 (18:20 +0100)]
docs: explicitly declare pages as being UTF-8 format

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: remove bogus 'shape' attribute on links
Daniel P. Berrange [Wed, 26 Jul 2017 17:18:16 +0000 (18:18 +0100)]
docs: remove bogus 'shape' attribute on links

The 'shape' attribute on <a> is used together with a 'coords'
attribute to create hot-zones in image maps. We're not using
image maps so our inclusion of a 'shape' attribute is bogus.
Furthermore this is forbidden in HTML5.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: generate pretty indented HTML for API docs
Daniel P. Berrange [Wed, 26 Jul 2017 17:12:50 +0000 (18:12 +0100)]
docs: generate pretty indented HTML for API docs

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: switch to using HTML5 doctype declaration
Daniel P. Berrange [Wed, 26 Jul 2017 17:01:25 +0000 (18:01 +0100)]
docs: switch to using HTML5 doctype declaration

The HTML5 doctype is simply

  <!DOCTYPE html>

no DTD is present because HTML5 is no longer defined as an
extension of SGML.

XSL has no way to natively output a doctype without a public
or system identifier, so we have to use an <xsl:text> hack
instead.

See also

  https://dev.w3.org/html5/html-author/#doctype-declaration

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: use UTF-8 instead of HTML entities for decorated letters
Daniel P. Berrange [Wed, 26 Jul 2017 16:56:44 +0000 (17:56 +0100)]
docs: use UTF-8 instead of HTML entities for decorated letters

We have files which use HTML entities for decorating letters
with unlauts, accents, etc. Other files just use UTF-8
characters directly for this. Remove the HTML entities since
they have no benefit and use UTF-8 instead.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: remove use of &mdash; entity
Daniel P. Berrange [Wed, 26 Jul 2017 16:54:30 +0000 (17:54 +0100)]
docs: remove use of &mdash; entity

A handful of places in the docs choose to use &mdash; instead
of '-' for no clear reason. Remove this inconsistency.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: remove use of &nbsp; in docs
Daniel P. Berrange [Wed, 26 Jul 2017 16:49:15 +0000 (17:49 +0100)]
docs: remove use of &nbsp; in docs

Some docs pages were using <p>&nbsp;</p> to add arbitrary whitespace
in the page. This is something that should be done by CSS if needed,
but it is not needed here, so delete it.

There was also use of <td>&nbsp;</td> which adds no value at all
when we have CSS to prettify tables.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: fix typo s/&and;/&amp;/
Daniel P. Berrange [Wed, 26 Jul 2017 16:42:02 +0000 (17:42 +0100)]
docs: fix typo s/&and;/&amp;/

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: make xmllint & xsltproc compulsory
Daniel P. Berrange [Wed, 26 Jul 2017 16:40:44 +0000 (17:40 +0100)]
docs: make xmllint & xsltproc compulsory

We already require libxml to be installed, so it is not unreasonable
to require xmllint and xsltproc to be installed too - any platform
with the former will have the latter too.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: drop XHTML 1.0 validation of website
Daniel P. Berrange [Wed, 26 Jul 2017 16:13:40 +0000 (17:13 +0100)]
docs: drop XHTML 1.0 validation of website

The HTML pages are currently validated against an XHTML 1.0 DTD.
This makes it impossible to take advantage of features that are
introduced in HTML 5, because they'll fail validation.

There is intentionally no DTD defined for HTML 5, so there's no
alternative to XHTML 1.0 DTD that we could switch to. The only
options are to stick with XHTML 1.0 forever, or drop the DTD
validation, and we pick the latter.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agodocs: switch to using 'id' attribute instead of 'name' for links
Daniel P. Berrange [Wed, 26 Jul 2017 14:52:42 +0000 (15:52 +0100)]
docs: switch to using 'id' attribute instead of 'name' for links

The 'name' attribute on <a...> elements is deprecated in favour
of the 'id' attribute which is allowed on any element. HTML5
drops 'name' support entirely.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agoTurn virDomainDeviceInfoFormat into void
Ján Tomko [Wed, 28 Jun 2017 15:10:59 +0000 (17:10 +0200)]
Turn virDomainDeviceInfoFormat into void

The rombar attribute was already validated at the time of parsing
the XML.

7 years agoconf: check for buffer errors before virBufferUse
Ján Tomko [Tue, 27 Jun 2017 14:33:22 +0000 (16:33 +0200)]
conf: check for buffer errors before virBufferUse

After an OOM error, virBuffer* APIs set buf->use to zero.
Adding a buffer to the parent buffer only if use is non-zero
would quietly drop data on error.

Check the error beforehand to make sure buf->use is zero
because we have not attempted to add anything to it.

7 years agoUse a separate buffer for <hub> subelements
Ján Tomko [Tue, 27 Jun 2017 14:36:24 +0000 (16:36 +0200)]
Use a separate buffer for <hub> subelements

Switch virDomainHubDefFormat to use a separate buffer for subelements.

7 years agoUse a separate buffer for <watchdog> subelements
Ján Tomko [Tue, 27 Jun 2017 14:28:06 +0000 (16:28 +0200)]
Use a separate buffer for <watchdog> subelements

Convert virDomainWatchdogDefFormat to use a separate
buffer for subelements.

7 years agoUse a separate buffer for <sound> subelements
Ján Tomko [Tue, 27 Jun 2017 14:27:18 +0000 (16:27 +0200)]
Use a separate buffer for <sound> subelements

Convert virDomainSoundDefFormat to use a separate buffer
for subelements.

7 years agoUse a separate buffer for <smartcard> subelements
Ján Tomko [Tue, 27 Jun 2017 14:24:11 +0000 (16:24 +0200)]
Use a separate buffer for <smartcard> subelements

Convert virDomainSmartcardDefFormat to use a separate buffer
for possible subelements, to avoid the need for duplicated
formatting logic in virDomainDeviceInfoNeedsFormat.

7 years agovirDomainDeviceInfoFormat: delete outdated comments
Ján Tomko [Tue, 27 Jun 2017 12:14:32 +0000 (14:14 +0200)]
virDomainDeviceInfoFormat: delete outdated comments

This function has grown to format more than just the address.
Delete the comment completely to avoid failing to update it
in the future.

Also, the indentation is now handled by the virBuffer APIs,
so the comment about indentation no longer makes sense.

7 years agoRemove superfluous usage of virDomainDeviceInfoNeedsFormat
Ján Tomko [Tue, 27 Jun 2017 12:04:52 +0000 (14:04 +0200)]
Remove superfluous usage of virDomainDeviceInfoNeedsFormat

This function returns false if virDomainDeviceInfoFormat
would not format anything.

Using it as the sole condition to decide whether to call
virDomainDeviceInfoFormat or not is pointless, since
the conditions are repeated in virDomainDeviceInfoFormat.

7 years agovirCapabilitiesFormatCaches: free cpus_str right after use
Ján Tomko [Wed, 2 Aug 2017 13:38:40 +0000 (15:38 +0200)]
virCapabilitiesFormatCaches: free cpus_str right after use

This will simplify the cleanup when we start checking for
buffer errors.

7 years agoAdd support for virtio-net.tx_queue_size
Michal Privoznik [Wed, 12 Jul 2017 12:19:26 +0000 (14:19 +0200)]
Add support for virtio-net.tx_queue_size

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

Just like I've added support for setting rx_queue_size (in
c56cdf259 and friends), qemu just gained support for setting tx
ring size.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agodriver: conditionalize use of dlopen functions & use mingw-dlfcn
Daniel P. Berrange [Wed, 2 Aug 2017 10:21:12 +0000 (11:21 +0100)]
driver: conditionalize use of dlopen functions & use mingw-dlfcn

Not every platform is guaranteed to have dlopen/dlsym, so we should
conditionalize its use. Suprisingly it is actually present for Win32
via the mingw-dlfcn add on, but we should still conditionalize it.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agotools: rename 'socket' to 'sockpath'
Daniel P. Berrange [Wed, 2 Aug 2017 10:51:08 +0000 (11:51 +0100)]
tools: rename 'socket' to 'sockpath'

A variable named 'socket' clashes with the function of the same
name, causing build failures due to warnings on some platforms.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
7 years agovirnetworkobj: Make virNetworkObjFindBy{UUID,Name}Locked() static again
Michal Privoznik [Tue, 25 Jul 2017 15:04:11 +0000 (17:04 +0200)]
virnetworkobj: Make virNetworkObjFindBy{UUID,Name}Locked() static again

These functions were made exportable back in 3aa3e072 when I was
splitting network code into parsing and list management parts.
Since then the split is finished now and these two functions do
not need to be exported anymore.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agovirConnect: Update comment for @privateData
Michal Privoznik [Thu, 27 Jul 2017 06:43:40 +0000 (08:43 +0200)]
virConnect: Update comment for @privateData

This member allows us to store a pointer to some private data.
However, the comment says it's used in both domain driver and
network driver. Well, it is not. It's just one pointer and domain
driver uses it directly. Network driver has a global driver
variable. Update the comment to not confuse others.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agotools: virsh: Adding unix socket support to 'domdisplay' command.
Julio Faracco [Fri, 28 Jul 2017 21:49:35 +0000 (18:49 -0300)]
tools: virsh: Adding unix socket support to 'domdisplay' command.

This commit adds the unix socket URL support to 'domdisplay' command.
Before, even if an user was using unix socket to define a spice graphics,
the command 'domdisplay' showed that the settings were not supported. Now,
the command shows the proper URL: spice+unix://foo/bar.sock.

Settings:
<graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'>
  <listen type='address' address='127.0.0.1'/>
</graphics>
<graphics type='spice'>
  <listen type='socket' socket='/tmp/spice.sock'/>
</graphics>

Before:
virsh # domdisplay --all Windows7
vnc://127.0.0.1:0

After:
virsh # domdisplay --all Windows7
vnc://127.0.0.1:0
spice+unix:///tmp/spice.sock

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

Signed-off-by: Julio Faracco <jcfaracco@gmail.com>
7 years agoUpdate news.xml after the post-release
Michal Privoznik [Mon, 31 Jul 2017 08:50:58 +0000 (10:50 +0200)]
Update news.xml after the post-release

In 19581afd778 the configure.ac was updated. However, the
news.xml was missing adjustment - creating the new section for
the release.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
7 years agoqemu: Split shmem preparation as it's supposed to be
Martin Kletzander [Fri, 21 Jul 2017 11:47:05 +0000 (13:47 +0200)]
qemu: Split shmem preparation as it's supposed to be

Since the introduction of shmem, there was a split of preparation code
from the formatting code from qemuBuildCommandLine() into
qemuProcessPrepareDomain().  Let's fix shmem in this regard, so that
we can slowly get to a cleaner codebase.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agoPost-release version bump to 3.7.0
Martin Kletzander [Wed, 2 Aug 2017 07:27:08 +0000 (09:27 +0200)]
Post-release version bump to 3.7.0

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
7 years agoRelease of libvirt-3.6.0
Daniel Veillard [Wed, 2 Aug 2017 02:00:22 +0000 (10:00 +0800)]
Release of libvirt-3.6.0

* docs/news.xml: updated for the release
* po/*.po*: regenerated