Philipp Hahn
4fce367188
test: Remove executable permission from Xen xm files
...
The configuration files are not directly executable as they don't have
as hash-bang line.
2016-06-07 14:06:18 -06:00
Philipp Hahn
f5ee412dc1
xen: test for driver=tap2 sub-type in xen-xm
...
tap2 only handles 'aio', but not 'raw', which must be explicitly given:
XML:raw needs to be translated to XM:aio for 'tap' and 'tap2' Xen
drivers.
2016-06-07 14:03:13 -06:00
Philipp Hahn
fafcc64a07
xen: Also add sub-type for driver=tap2 in xen-xm
...
tap2 only handles 'aio', but not 'raw', which must be explicitly given:
| $ virsh domxml-to-native yyy.xml > yyy.xm
| $ xm new yyy.xm
| Error: tap:/srv/xen/xxx.img not a valid disk type
| $ sed -i -e 's/tap2:/&aio:/' yyy.xm
| $ xm new yyy.xm
Fix reading and writing "xen-xm" format for "tap2" by handling it the
same as "tap".
2016-06-07 13:59:58 -06:00
Jovanka Gulicoska
62aff792ac
qemu: Replace VIR_ERROR with standard vir*Error in state driver init
2016-06-07 13:47:13 -04:00
Jovanka Gulicoska
9c9afba4c0
xen: Replace VIR_ERROR with standard vir*Error in state driver init
2016-06-07 13:47:13 -04:00
Jovanka Gulicoska
de48ee1d6c
uml: Replace VIR_ERROR with standard vir*Error in state driver init
2016-06-07 13:46:34 -04:00
Peter Krempa
ecb714de53
qemu: migration: Add VM log entry on start of migration
...
Note the start of migration of a qemu process to the VM log file for
possible debug purposes.
2016-06-07 18:10:29 +02:00
Peter Krempa
cf3ea0769c
qemu: process: Append the "shutting down" message using the new APIs
...
Use qemuDomainLogAppendMessage rather than attempting to open a new
logging context with file descriptors. The new approach allows to log
the message even if qemu is still running at that point which appens
during migration finish phase where qemuProcessStop is killing qemu.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1312188
2016-06-07 18:10:29 +02:00
Peter Krempa
91a6eacc8f
qemu: domain: Implement helper for one-shot log entries to the VM log file
...
Along with the virtlogd addition of the log file appending API implement
a helper for logging one-shot entries to the log file including the
fallback approach of using direct file access.
This will be used for noting the shutdown of the qemu proces and
possibly other actions such as VM migration and other critical VM
lifecycle events.
2016-06-07 18:10:29 +02:00
Peter Krempa
78b9b85c06
log: daemon: Add remote protocol handling for the log appending API
...
Implement the RPC dispatcher and caller for the new API.
2016-06-07 18:10:29 +02:00
Peter Krempa
5e6143fbcc
log: handler: Add new API to append to logging files
...
For logging one-shot entries to the VM log file it's quite a waste to
hold open the file descriptor for logging that is provided by the
current API.
This new API will be ideal for logging one-shot entries to the file
e.g. at the point when we shut the VM down rather than having to add the
whole file-descriptor infrastructure.
Additionally this will allow to add the messages even after restart of
libvirtd since virtlogd doesn't allow to obtain a regular context with
filedescriptors while the VM is still active.
2016-06-07 18:10:29 +02:00
John Ferlan
456ccc14d5
util: Perform proper virRandomBytes return value checking
...
Document the return value of virRandomBytes as 0 or some errno value and
then make sure all callers make the proper checks.
2016-06-07 10:18:36 -04:00
Ján Tomko
cf922bf837
Reindent virNetDevSendEthtoolIoctl
2016-06-07 14:13:11 +02:00
Ján Tomko
0a9bbe748a
Reuse the socket in virNetDevGetFeatures
...
This speeds up node_device_udev driver startup 11x.
2016-06-07 14:13:11 +02:00
Ján Tomko
d59ca0b05f
Return bool in virNetDevFeatureAvailable
...
Simplify the logic
2016-06-07 14:13:11 +02:00
Ján Tomko
3a7440bdc7
Split out virNetDevGetEthtoolGFeatures
...
Move out the code depending on HAVE_DECL_ETHTOOL_GFEATURES.
2016-06-07 14:13:11 +02:00
Ján Tomko
970af4a69f
Split out virNetDevGetEthtoolFeatures
...
Split out the features that we probe via various ethtool commands
and ETHTOOL_GFLAGS.
2016-06-07 14:13:11 +02:00
Ján Tomko
0a7da7882d
Move struct elem out of virNetDevGetFeatures
...
Rename struct elem to virNetDevEthtoolFeatureCmd and move it
out of the function to allow reusing it.
2016-06-07 14:13:11 +02:00
Ján Tomko
7d097b223d
Reindent comment of virNetDevFeatureAvailable
2016-06-07 14:13:11 +02:00
Peter Krempa
577fb98fbd
qemu: process: Allow VIR_QEMU_PROCESS_START_NEW in qemuProcessLaunch
...
The new flag was not added to virCheckFlags in commit '0d1c17aa' causing
a regression where VMs were not able to start.
2016-06-07 13:56:36 +02:00
John Ferlan
896c4862d5
util: Alter virCryptoEncryptData for non GNUTLS builds
...
Rather than intermixing the ATTRIBUTE_UNUSED - use HAVE_GNUTLS_CIPHER_ENCRYPT
for the whole function instead.
2016-06-07 07:38:25 -04:00
Ján Tomko
1fd8fc8fc1
Add nomatch filters when enumerating udev devices
...
Filter out some subsystems we are not interested in.
2016-06-07 13:23:22 +02:00
Ján Tomko
207a50f7cd
node_device_udev: rename labels to cleanup
...
Instead of the custom out and out_unlock.
2016-06-07 13:23:22 +02:00
Ján Tomko
074b4888ee
node_device_udev: remove unnecessary ret variables
...
Remove ret variables and labels from functions where there is no cleanup
to be done.
2016-06-07 13:23:22 +02:00
Peter Krempa
5972f185e1
qemu: Move check that validates 'min_guarantee' to qemuDomainDefValidate
...
Introduce a validation callback for qemu and move checking of
min_guarantee to the new callback.
2016-06-07 13:02:20 +02:00
Peter Krempa
18f1dda390
conf: Move validation of disk LUN device to the appropriate place
...
Now with the proper domain config validation infrastructure the check
can be moved to a place that doesn't make domains vanish.
2016-06-07 13:02:20 +02:00
Peter Krempa
05eab1bf9a
conf: Move disk info validator to the domain conf validator
...
Since it will not be called from outside of conf we can unexport it too
if we move it to the appropriate place.
Test suite change is necessary since the error will be reported sooner
now.
2016-06-07 13:02:20 +02:00
Peter Krempa
d071d292ca
qemu: process: Call the domain config validator when starting a new VM
...
To avoid duplicating all the checks when starting a fresh VM from a
possibly unchecked config, call the domain def validator.
2016-06-07 13:02:20 +02:00
Peter Krempa
0d1c17aa68
qemu: process: Convert multiple boolean args to a single flag
...
Validation of qemu process startup requires to know whether the process
is used for a fresh VM or whether it's reloaded from a
snapshot/migration. Pass this information in via a flag rather than
calculating it from a bunch of bools.
2016-06-07 13:02:20 +02:00
Peter Krempa
43e21b1f10
qemu: process: Unexport qemuProcessStartValidate
2016-06-07 13:02:20 +02:00
Peter Krempa
9890a7a183
conf: Add device def validation callback
...
Similarly to the domain definition validator add a device validator. The
change to the prototype of the domain validator is necessary as
virDomainDeviceInfoIterateInternal requires a non-const pointer.
2016-06-07 13:02:20 +02:00
Peter Krempa
0fc1fde20b
conf: drop 'def' from struct virDomainDefPostParseDeviceIteratorData
...
It's passed to all places along with the structure.
2016-06-07 13:02:20 +02:00
Peter Krempa
b394af162a
conf: Add infrastructure for adding configuration validation
...
Until now we weren't able to add checks that would reject configuration
once accepted by the parser. This patch adds a new callback and
infrastructure to add such checks. In this patch all the places where
rejecting a now-invalid configuration wouldn't be a good idea are marked
with a new parser flag.
2016-06-07 13:02:20 +02:00
Peter Krempa
998c9e34e6
conf: Rename VIR_DOMAIN_DEF_PARSE_VALIDATE to VIR_DOMAIN_DEF_PARSE_VALIDATE_SCHEMA
...
Make it obvious that the flag is controlling RNG schema validation.
2016-06-07 13:02:20 +02:00
Ján Tomko
0c8fe3d457
node_device_udev: remove yoda condition
2016-06-07 12:53:37 +02:00
Ján Tomko
29c2a9cc21
udevSetupSystemDev: return if allocation fails
...
There is no cleanup to be done.
2016-06-07 12:53:37 +02:00
Ján Tomko
d1d4719814
Reformat udevProcessRemoveableMedia
...
Remove unnecessary ret variable and return early if we have no media
to save on indentation.
2016-06-07 12:53:37 +02:00
Ján Tomko
e2859b9dcd
udevProcessStorage: trim all whitespace from model and vendor
...
Use virTrimSpaces instead of a custom implementation.
2016-06-07 12:53:37 +02:00
Ján Tomko
cc1d0e2a0e
node_device_udev: switch to using virReportError
...
Also use the more common "Unable to initialize mutex" string
and virReportSystemError instead of virStrerror.
2016-06-07 12:53:37 +02:00
Ján Tomko
c40ed871cc
Remove PROPERTY_* constants
...
They are no longer used.
2016-06-07 12:53:37 +02:00
Ján Tomko
4ab526ef71
Only return two values in udevGetUintSysfsAttr
...
Open code the call to udev_device_get_sysattr_value
in the one place where it's needed.
2016-06-07 12:53:37 +02:00
Ján Tomko
3554492a08
Only return two values in udevGetIntSysfsAttr
...
Callers only check for an error or a specific integer value.
2016-06-07 12:53:37 +02:00
Ján Tomko
e545806db9
Only return two values in udevGetStringSysfsAttr
...
The callers only care for an error, and a missing attribute
is simply NULL.
2016-06-07 12:53:37 +02:00
Ján Tomko
470498de18
Remove extra allocation in udevGetDeviceSysfsAttr
...
Most of the code paths free it right after converting it to
an integer.
2016-06-07 12:53:37 +02:00
Ján Tomko
10427db779
Only return two values in udevGetUintProperty
...
We only care about the failure, not a missing property.
2016-06-07 12:53:37 +02:00
Ján Tomko
71402ef6f5
Only return two values in udevGetStringProperty
...
There is no need to differentiate between PROPERTY_FOUND
and PROPERTY_MISSING - we can just look if the string is non-NULL.
2016-06-07 12:53:37 +02:00
Martin Kletzander
3484c05ce0
qemu: Add support to QXL's max_outputs parameter
...
Historically, we added heads=1 to videos, but for example for qxl, we
did not reflect that on the command line.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1283207
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
2016-06-07 12:42:54 +02:00
Martin Kletzander
6e81a1f9ef
qemu: Check for qxl's max_outputs parameter
...
Add capabilities for both qxl and qxl-vga devices.
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
2016-06-07 12:40:01 +02:00
Ján Tomko
71cddab042
Rewrite disk type checking in udevProcessStorage
...
Error out on parsing errors and use a local const char pointer
instead of chained ifs to check whether we found a match.
2016-06-07 12:14:24 +02:00
Ján Tomko
4ccf6886c8
Fix the return value in udevKludgeStorageType
...
Since the switch to VIR_STRDUP this function returns 1 on success,
but the caller treats any non-zero value as failure.
2016-06-07 12:13:59 +02:00