[libvirt] [PULL 00/14] Audio 20190312 patches
by Gerd Hoffmann
The following changes since commit e2a18635a400b0e68679614132e9ef6316105590:
Merge remote-tracking branch 'remotes/ericb/tags/pull-nbd-2019-03-08' into staging (2019-03-09 20:55:44 +0000)
are available in the Git repository at:
git://git.kraxel.org/qemu tags/audio-20190312-pull-request
for you to fetch changes up to 05d2f2a64dbcaa50370d344ab12081d776ed0f03:
audio: -audiodev command line option: cleanup (2019-03-11 10:29:27 +0100)
----------------------------------------------------------------
audio: introduce -audiodev
----------------------------------------------------------------
Kővágó, Zoltán (14):
qapi: qapi for audio backends
audio: use qapi AudioFormat instead of audfmt_e
audio: -audiodev command line option: documentation
audio: -audiodev command line option basic implementation
alsaaudio: port to -audiodev config
coreaudio: port to -audiodev config
dsoundaudio: port to -audiodev config
noaudio: port to -audiodev config
ossaudio: port to -audiodev config
paaudio: port to -audiodev config
sdlaudio: port to -audiodev config
spiceaudio: port to -audiodev config
wavaudio: port to -audiodev config
audio: -audiodev command line option: cleanup
audio/audio.h | 30 +-
audio/audio_int.h | 37 +-
audio/audio_template.h | 42 +-
audio/dsound_template.h | 6 +-
audio/alsaaudio.c | 368 ++++++----------
audio/audio.c | 859 +++++++++++++-------------------------
audio/audio_legacy.c | 544 ++++++++++++++++++++++++
audio/audio_win_int.c | 18 +-
audio/coreaudio.c | 51 +--
audio/dsoundaudio.c | 61 +--
audio/noaudio.c | 3 +-
audio/ossaudio.c | 191 +++------
audio/paaudio.c | 111 ++---
audio/sdlaudio.c | 50 +--
audio/spiceaudio.c | 11 +-
audio/wavaudio.c | 75 +---
audio/wavcapture.c | 2 +-
hw/arm/omap2.c | 2 +-
hw/audio/ac97.c | 2 +-
hw/audio/adlib.c | 2 +-
hw/audio/cs4231a.c | 6 +-
hw/audio/es1370.c | 4 +-
hw/audio/gus.c | 2 +-
hw/audio/hda-codec.c | 18 +-
hw/audio/lm4549.c | 6 +-
hw/audio/milkymist-ac97.c | 2 +-
hw/audio/pcspk.c | 2 +-
hw/audio/sb16.c | 14 +-
hw/audio/wm8750.c | 6 +-
hw/display/xlnx_dp.c | 2 +-
hw/input/tsc210x.c | 2 +-
hw/usb/dev-audio.c | 2 +-
ui/vnc.c | 26 +-
vl.c | 7 +-
audio/Makefile.objs | 2 +-
qapi/Makefile.objs | 6 +-
qapi/audio.json | 304 ++++++++++++++
qapi/qapi-schema.json | 1 +
qemu-deprecated.texi | 7 +
qemu-options.hx | 236 ++++++++++-
40 files changed, 1834 insertions(+), 1286 deletions(-)
create mode 100644 audio/audio_legacy.c
create mode 100644 qapi/audio.json
--
2.18.1
5 years, 9 months
[libvirt] [PATCH] tests: Don't use canonical paths in virstoragetest
by Andrea Bolognani
The layout of my home directory is somewhat peculiar: I store
all git repositories in ~/src/upstream, but since I spend
almost all of my time hacking on libvirt, I also have a
convenience symlink ~/src/libvirt -> ~/src/upstream/libvirt
that I use to access that specific git repository.
The above setup has served me well for years; however, ever
since commit ca1471622dd9 dropped our own custom definitions
for abs_{,top_}{src,build}dir and started using the ones
provided by autotools, virstoragetest has started reliably
failing with errors such as
2) Storage backing chain 2 ...
Offset 0
Expect [chain member: 0
path:/home/abologna/src/upstream/libvirt/tests/virstoragedata/raw
backingStoreRaw: <null>
capacity: 0
encryption: 0
relPath:<null>
type:1
format:1
protocol:none
hostname:<null>
]
Actual [chain member: 0
path:/home/abologna/src/libvirt/tests/virstoragedata/raw
backingStoreRaw: <null>
capacity: 0
encryption: 0
relPath:<null>
type:1
format:1
protocol:none
hostname:<null>
]
... FAILED
Using abolute paths instead of canonical ones in the tests makes
the problem go away.
Note that all tests that are specifically designed to test path
canonicalization via TEST_PATH_CANONICALIZE() were passing even
before this patch and are not touched by it.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
I'm far from being confident this is the correct approach, but
I've grown annoyed enough by the constant 'make check' failures
that I figured I'd at least get the discussion going :)
tests/virstoragetest.c | 50 +++++++++---------------------------------
1 file changed, 10 insertions(+), 40 deletions(-)
diff --git a/tests/virstoragetest.c b/tests/virstoragetest.c
index fb98903f02..d2be6fffef 100644
--- a/tests/virstoragetest.c
+++ b/tests/virstoragetest.c
@@ -46,21 +46,16 @@ VIR_LOG_INIT("tests.storagetest");
* sub/link2: symlink to wrap
*
* Relative names to these files are known at compile time, but absolute
- * and canonical names depend on where the test is run; for convenience,
+ * names depend on where the test is run; for convenience,
* we pre-populate the computation of these names for use during the test.
*/
static char *qemuimg;
static char *absraw;
-static char *canonraw;
static char *absqcow2;
-static char *canonqcow2;
static char *abswrap;
-static char *canonwrap;
static char *absqed;
-static char *canonqed;
static char *absdir;
-static char *canondir;
static char *abslink2;
static void
@@ -68,15 +63,10 @@ testCleanupImages(void)
{
VIR_FREE(qemuimg);
VIR_FREE(absraw);
- VIR_FREE(canonraw);
VIR_FREE(absqcow2);
- VIR_FREE(canonqcow2);
VIR_FREE(abswrap);
- VIR_FREE(canonwrap);
VIR_FREE(absqed);
- VIR_FREE(canonqed);
VIR_FREE(absdir);
- VIR_FREE(canondir);
VIR_FREE(abslink2);
if (chdir(abs_builddir) < 0) {
@@ -165,10 +155,6 @@ testPrepImages(void)
fprintf(stderr, "unable to create directory %s\n", datadir "/dir");
goto cleanup;
}
- if (!(canondir = virFileCanonicalizePath(absdir))) {
- virReportOOMError();
- goto cleanup;
- }
if (chdir(datadir) < 0) {
fprintf(stderr, "unable to test relative backing chains\n");
@@ -180,10 +166,6 @@ testPrepImages(void)
fprintf(stderr, "unable to create raw file\n");
goto cleanup;
}
- if (!(canonraw = virFileCanonicalizePath(absraw))) {
- virReportOOMError();
- goto cleanup;
- }
/* Create a qcow2 wrapping relative raw; later on, we modify its
* metadata to test other configurations */
@@ -200,10 +182,6 @@ testPrepImages(void)
"-F", "raw", "-b", "raw", "qcow2", NULL);
if (virCommandRun(cmd, NULL) < 0)
goto skip;
- if (!(canonqcow2 = virFileCanonicalizePath(absqcow2))) {
- virReportOOMError();
- goto cleanup;
- }
/* Create a second qcow2 wrapping the first, to be sure that we
* can correctly avoid insecure probing. */
@@ -214,10 +192,6 @@ testPrepImages(void)
virCommandAddArg(cmd, "wrap");
if (virCommandRun(cmd, NULL) < 0)
goto skip;
- if (!(canonwrap = virFileCanonicalizePath(abswrap))) {
- virReportOOMError();
- goto cleanup;
- }
/* Create a qed file. */
virCommandFree(cmd);
@@ -227,10 +201,6 @@ testPrepImages(void)
virCommandAddArg(cmd, "qed");
if (virCommandRun(cmd, NULL) < 0)
goto skip;
- if (!(canonqed = virFileCanonicalizePath(absqed))) {
- virReportOOMError();
- goto cleanup;
- }
#ifdef HAVE_SYMLINK
/* Create some symlinks in a sub-directory. */
@@ -731,7 +701,7 @@ mymain(void)
/* Raw image, whether with right format or no specified format */
testFileData raw = {
- .path = canonraw,
+ .path = absraw,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_RAW,
};
@@ -743,12 +713,12 @@ mymain(void)
testFileData qcow2 = {
.expBackingStoreRaw = "raw",
.expCapacity = 1024,
- .path = canonqcow2,
+ .path = absqcow2,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_QCOW2,
};
testFileData qcow2_as_raw = {
- .path = canonqcow2,
+ .path = absqcow2,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_RAW,
};
@@ -772,7 +742,7 @@ mymain(void)
testFileData wrap = {
.expBackingStoreRaw = absqcow2,
.expCapacity = 1024,
- .path = canonwrap,
+ .path = abswrap,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_QCOW2,
};
@@ -795,7 +765,7 @@ mymain(void)
testFileData wrap_as_raw = {
.expBackingStoreRaw = absqcow2,
.expCapacity = 1024,
- .path = canonwrap,
+ .path = abswrap,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_QCOW2,
};
@@ -878,12 +848,12 @@ mymain(void)
testFileData qed = {
.expBackingStoreRaw = absraw,
.expCapacity = 1024,
- .path = canonqed,
+ .path = absqed,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_QED,
};
testFileData qed_as_raw = {
- .path = canonqed,
+ .path = absqed,
.type = VIR_STORAGE_TYPE_FILE,
.format = VIR_STORAGE_FILE_RAW,
};
@@ -892,12 +862,12 @@ mymain(void)
/* directory */
testFileData dir = {
- .path = canondir,
+ .path = absdir,
.type = VIR_STORAGE_TYPE_DIR,
.format = VIR_STORAGE_FILE_DIR,
};
testFileData dir_as_raw = {
- .path = canondir,
+ .path = absdir,
.type = VIR_STORAGE_TYPE_DIR,
.format = VIR_STORAGE_FILE_RAW,
};
--
2.20.1
5 years, 9 months
[libvirt] [PATCH 0/4] Fix checking of blkiotune group name on update
by Ján Tomko
*** BLURB HERE ***
*** BLURB THERE ***
*** BLURB EVERYWHERE ***
Ján Tomko (4):
Revert "qemu: emit error when trying to update blkiotune group_name in
qemuDomainChangeDiskLive"
qemu: introduce CHECK_STREQ_NULLABLE in qemuDomainDiskChangeSupported
qemu: error out on attempt to change blkiotune group name
qemuDomainDiskChangeSupported: use CHECK_STREQ_NULLABLE more
src/qemu/qemu_domain.c | 64 +++++++++++++++++-------------------------
1 file changed, 26 insertions(+), 38 deletions(-)
--
2.20.1
5 years, 9 months
Re: [libvirt] [PATCH 1/2] snapshots: allow create --redefine to force a new configuration
by Richard Moore
>
> On Wed, Mar 20, 2019 at 8:53 AM Peter Krempa <pkrempa redhat com>
> wrote:
>
> I'm not persuaded that this workaround is necessary.
>
> Thanks Peter for taking a deeper look!
>
> And yes your summary seems correct.
> I personally still like to give admins the ability to force configs,
> but I'm ok if the general upstream opinion to that is no.
>
> I have asked the reporter - on the bug that I got - to chime in here
> and
> do the "convincing" as he is the affected person I think he is more
> able
> to do so - e.g. express the pain with the suggested workaround.
>
> --
> Christian Ehrhardt
> Software Engineer, Ubuntu Server
> Canonical Ltd
Hi,
I am the original fix requestor who Christian has put up with for quite
some time now!
I will try and summarise in brief;
The initial problem was the machine type I had set in various
snapshots/VM's had been deprecated and thus rendered the snapshots all
unusable after upgrading O/S (that came packaged with newer
libvirt/qemu versions.)
I thus needed a simple, intuitive way to edit the snapshots to a
machine type that was still supported, permanently.
snapshot-edit seemed the appropriate tool for doing this, but alas it
would not, a way was needed to force it to save the changes.
One of my main reasons for using vm/snapshots is testing software
install behaviour/compatibility in Windows, so I have a variety of
Windows versions, each with snapshots taken with various levels of core
'things' installed (.net framework , C++ redistributables etc.)
Thus the snapshots could be many years old. I need to be able to flick
between them, so being able to permanently 'fix' them is my goal.
The second issue was similarly being able to edit other 'simple' facets
of the snapshots e.g.
Attached disks, floppies or ISO's - or paths to them.
Memory, if testing something that needed more than I ever invisaged way
back when.
MAC address (we have to register devices on the network via MAC, which
expire, and can then render the snapshot unusable if I cannot change
the MAC in the snapshot)
I hope this makes sense, I have tried to be brief, I can elaborate
further if needed.
I think being able to edit existing snapshots simply, with once
command, would be very beneficial to many people.
(I think most people trying to do this would be aware of the risks,
especially if the alternative is that the snapshot doesnt work
anyway.)
Cheers
Richard Moore
5 years, 9 months
[libvirt] [dockerfiles PATCH 0/2] Drop obsolete Dockerfiles
by Andrea Bolognani
The corresponding platforms are not longer supported by the
libvirt-jenkins-ci project.
Series pushed under the Dockerfile refresh rule.
Andrea Bolognani (2):
Drop Debian 8 Dockerfile
Drop Ubuntu 16.04 Dockerfile
buildenv-debian-8.Dockerfile | 82 ---------------------------------
buildenv-ubuntu-16.Dockerfile | 85 -----------------------------------
2 files changed, 167 deletions(-)
delete mode 100644 buildenv-debian-8.Dockerfile
delete mode 100644 buildenv-ubuntu-16.Dockerfile
--
2.20.1
5 years, 9 months
[libvirt] [jenkins-ci PATCH 0/2] Drop Ubuntu 16.04
by Andrea Bolognani
I'm a bit conflicted about this one: on one hand, unlike Debian 8 we
haven't really run into any issue with Ubuntu 16.04, we can still
build almost all projects on it, and it doesn't require any crazy
hacks to maintain; on the other hand, perhaps the reason why we still
claim we can build almost all projects on it is because we don't
actually run any build on it, either on CentOS CI or on Travis CI :D
Anyway: here are the patches, let's see what other people think.
Andrea Bolognani (2):
Stop building on Ubuntu 16.04
guests: Drop Ubuntu 18.04
guests/host_vars/libvirt-ubuntu-16/docker.yml | 2 --
.../host_vars/libvirt-ubuntu-16/install.yml | 2 --
guests/host_vars/libvirt-ubuntu-16/main.yml | 22 -------------------
guests/inventory | 1 -
guests/playbooks/build/jobs/defaults.yml | 1 -
.../playbooks/build/projects/libvirt-dbus.yml | 5 +----
.../build/projects/libvirt-go-xml.yml | 1 -
.../playbooks/build/projects/libvirt-go.yml | 1 -
.../build/projects/libvirt-ocaml.yml | 1 -
.../build/projects/libvirt-sandbox.yml | 1 -
.../playbooks/build/projects/libvirt-tck.yml | 1 -
guests/playbooks/build/projects/libvirt.yml | 1 -
guests/playbooks/build/projects/osinfo-db.yml | 1 -
.../playbooks/build/projects/virt-manager.yml | 4 +---
guests/vars/mappings.yml | 3 ---
15 files changed, 2 insertions(+), 45 deletions(-)
delete mode 100644 guests/host_vars/libvirt-ubuntu-16/docker.yml
delete mode 100644 guests/host_vars/libvirt-ubuntu-16/install.yml
delete mode 100644 guests/host_vars/libvirt-ubuntu-16/main.yml
--
2.20.1
5 years, 9 months
[libvirt] [jenkins-ci PATCH 0/2] Drop Debian 8
by Andrea Bolognani
See patch 1/2 and
https://www.redhat.com/archives/libvir-list/2019-March/msg01864.html
for the rationale.
Andrea Bolognani (2):
Stop building on Debian 8
guests: Drop Debian 8
guests/host_vars/libvirt-debian-8/docker.yml | 2 -
guests/host_vars/libvirt-debian-8/install.yml | 2 -
guests/host_vars/libvirt-debian-8/main.yml | 20 -----
guests/inventory | 1 -
guests/playbooks/build/jobs/defaults.yml | 1 -
.../playbooks/build/projects/libvirt-dbus.yml | 1 -
.../build/projects/libvirt-go-xml.yml | 1 -
.../playbooks/build/projects/libvirt-go.yml | 1 -
.../build/projects/libvirt-ocaml.yml | 1 -
.../build/projects/libvirt-sandbox.yml | 1 -
.../playbooks/build/projects/libvirt-tck.yml | 1 -
guests/playbooks/build/projects/libvirt.yml | 1 -
guests/playbooks/build/projects/osinfo-db.yml | 1 -
.../playbooks/build/projects/virt-manager.yml | 4 +-
guests/playbooks/update/tasks/base.yml | 22 ------
guests/playbooks/update/tasks/bootstrap.yml | 6 --
.../templates/jessie-backports.preferences.j2 | 3 -
.../templates/jessie-backports.sources.j2 | 1 -
guests/vars/mappings.yml | 7 --
guests/vars/vault.yml | 78 +++++++++----------
jenkins/jobs/defaults.yaml | 1 -
jenkins/projects/libvirt-dbus.yaml | 1 -
jenkins/projects/libvirt-go-xml.yaml | 1 -
jenkins/projects/libvirt-go.yaml | 1 -
jenkins/projects/libvirt-ocaml.yaml | 1 -
jenkins/projects/libvirt-sandbox.yaml | 1 -
jenkins/projects/libvirt-tck.yaml | 1 -
jenkins/projects/libvirt.yaml | 1 -
jenkins/projects/osinfo-db.yaml | 1 -
jenkins/projects/virt-manager.yaml | 4 +-
30 files changed, 41 insertions(+), 127 deletions(-)
delete mode 100644 guests/host_vars/libvirt-debian-8/docker.yml
delete mode 100644 guests/host_vars/libvirt-debian-8/install.yml
delete mode 100644 guests/host_vars/libvirt-debian-8/main.yml
delete mode 100644 guests/playbooks/update/templates/jessie-backports.preferences.j2
delete mode 100644 guests/playbooks/update/templates/jessie-backports.sources.j2
--
2.20.1
5 years, 9 months
[libvirt] [PATCH] snapashot: Improve logic of virDomainMomentMoveChildren
by Eric Blake
Even though Coverity can prove that 'last' is always set if the prior
loop executed, gcc 8.0.1 cannot:
CC conf/libvirt_conf_la-virdomainmomentobjlist.lo
../../src/conf/virdomainmomentobjlist.c: In function 'virDomainMomentMoveChildren':
../../src/conf/virdomainmomentobjlist.c:178:19: error: 'last' may be used uninitialized in this function [-Werror=maybe-uninitialized]
last->sibling = to->first_child;
~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
Rewrite the loop to a form that should be easier for static analysis
to work with.
Fixes: ced0898f86bf
Reported-by: Bjoern Walk <bwalk(a)linux.ibm.com>
Signed-off-by: Eric Blake <eblake(a)redhat.com>
---
Qualifies as a build-breaker fix, but I'd like a review before pushing.
src/conf/virdomainmomentobjlist.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/src/conf/virdomainmomentobjlist.c b/src/conf/virdomainmomentobjlist.c
index b9ca5b1318..5a217056d1 100644
--- a/src/conf/virdomainmomentobjlist.c
+++ b/src/conf/virdomainmomentobjlist.c
@@ -164,18 +164,17 @@ void
virDomainMomentMoveChildren(virDomainMomentObjPtr from,
virDomainMomentObjPtr to)
{
- virDomainMomentObjPtr child;
- virDomainMomentObjPtr last;
+ virDomainMomentObjPtr child = from->first_child;
- if (!from->first_child)
- return;
- for (child = from->first_child; child; child = child->sibling) {
+ while (child) {
child->parent = to;
- if (!child->sibling)
- last = child;
+ if (!child->sibling) {
+ child->sibling = to->first_child;
+ break;
+ }
+ child = child->sibling;
}
to->nchildren += from->nchildren;
- last->sibling = to->first_child;
to->first_child = from->first_child;
from->nchildren = 0;
from->first_child = NULL;
--
2.20.1
5 years, 9 months
Re: [libvirt] [PATCH 1/2] snapshots: allow create --redefine to force a new configuration
by Richard Moore
>
> On Wed, Mar 20, 2019 at 8:53 AM Peter Krempa <pkrempa redhat com>
> wrote:
>
> I'm not persuaded that this workaround is necessary.
>
> Thanks Peter for taking a deeper look!
>
> And yes your summary seems correct.
> I personally still like to give admins the ability to force configs,
> but I'm ok if the general upstream opinion to that is no.
>
> I have asked the reporter - on the bug that I got - to chime in here
> and
> do the "convincing" as he is the affected person I think he is more
> able
> to do so - e.g. express the pain with the suggested workaround.
>
> --
> Christian Ehrhardt
> Software Engineer, Ubuntu Server
> Canonical Ltd
Hi,
I am the original fix requestor who Christian has put up with for quite
some time now!
I will try and summarise in brief;
The initial problem was the machine type I had set in various
snapshots/VM's had been deprecated and thus rendered the snapshots all
unusable after upgrading O/S (that came packaged with newer
libvirt/qemu versions.)
I thus needed a simple, intuitive way to edit the snapshots to a
machine type that was still supported, permanently.
snapshot-edit seemed the appropriate tool for doing this, but alas it
would not, a way was needed to force it to save the changes.
One of my main reasons for using vm/snapshots is testing software
install behaviour/compatibility in Windows, so I have a variety of
Windows versions, each with snapshots taken with various levels of core
'things' installed (.net framework , C++ redistributables etc.)
Thus the snapshots could be many years old. I need to be able to flick
between them, so being able to permanently 'fix' them is my goal.
The second issue was similarly being able to edit other 'simple' facets
of the snapshots e.g.
Attached disks, floppies or ISO's - or paths to them.
Memory, if testing something that needed more than I ever invisaged way
back when.
MAC address (we have to register devices on the network via MAC, which
expire, and can then render the snapshot unusable if I cannot change
the MAC in the snapshot)
I hope this makes sense, I have tried to be brief, I can elaborate
further if needed.
I think being able to edit existing snapshots simply, with once
command, would be very beneficial to many people.
(I think most people trying to do this would be aware of the risks,
especially if the alternative is that the snapshot doesn’t work
anyway.)
Cheers
Richard Moore
5 years, 9 months
[libvirt] [perl][PATCH 0/3] Add a bunch of constants
by Michal Privoznik
*** BLURB HERE ***
Michal Privoznik (3):
Register new error code constants
Add VIR_FROM_DOMAIN_CHECKPOINT constant
Add VIR_MIGRATE_PARALLEL and VIR_MIGRATE_PARAM_PARALLEL_CONNECTIONS
constants
Changes | 5 +++++
lib/Sys/Virt.xs | 6 ++++++
lib/Sys/Virt/Domain.pm | 10 ++++++++++
lib/Sys/Virt/Error.pm | 16 ++++++++++++++++
4 files changed, 37 insertions(+)
--
2.19.2
5 years, 9 months