Accepting request 253577 from home:jfehlig:branches:Virtualization

Note:  tarball verification is now done using %gpg_verify, along
with the .asc file the upstream libvirt maintainer now generates
for each release.  This approach requires using the upstream .gz
tarball, which is slightly larger than the regenerated .bz2 one.

- Update to libvirt 1.2.9
  - Introduce virNodeAllocPages
  - event: introduce new event for tunable values
  - Add support for fetching statistics of completed jobs
  - CVE-2014-3657: domain_conf: fix domain deadlock
  - CVE-2014-3633: qemu: blkiotune: Use correct definition when
    looking up disk
  - Many incremental improvements and bug fixes, see
    http://libvirt.org/news.html
  - Drop upstream patches: 3e745e8f-CVE-2014-3633.patch,
    libvirt-guests-wait-for-ntp.patch
- Verify tarball with associated .asc file
  Add: libvirt.keyring, libvirt-1.2.9.tar.gz.asc
  Use upstream .gz tarball instead of locally generated .bz2

OBS-URL: https://build.opensuse.org/request/show/253577
OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=411
This commit is contained in:
James Fehlig 2014-10-01 22:29:37 +00:00 committed by Git OBS Bridge
parent 408925e5ca
commit 278a149fdc
26 changed files with 298 additions and 254 deletions

View File

@ -1,41 +0,0 @@
commit 3e745e8f775dfe6f64f18b5c2fe4791b35d3546b
Author: Peter Krempa <pkrempa@redhat.com>
Date: Thu Sep 11 16:35:53 2014 +0200
CVE-2014-3633: qemu: blkiotune: Use correct definition when looking up disk
Live definition was used to look up the disk index while persistent one
was indexed leading to a crash in qemuDomainGetBlockIoTune. Use the
correct def and report a nice error.
Unfortunately it's accessible via read-only connection, though it can
only crash libvirtd in the cases where the guest is hot-plugging disks
without reflecting those changes to the persistent definition. So
avoiding hotplug, or doing hotplug where persistent is always modified
alongside live definition, will avoid the out-of-bounds access.
Introduced in: eca96694a7f992be633d48d5ca03cedc9bbc3c9aa (v0.9.8)
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1140724
Reported-by: Luyao Huang <lhuang@redhat.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Index: libvirt-1.2.8/src/qemu/qemu_driver.c
===================================================================
--- libvirt-1.2.8.orig/src/qemu/qemu_driver.c
+++ libvirt-1.2.8/src/qemu/qemu_driver.c
@@ -16141,9 +16141,13 @@ qemuDomainGetBlockIoTune(virDomainPtr do
}
if (flags & VIR_DOMAIN_AFFECT_CONFIG) {
- int idx = virDomainDiskIndexByName(vm->def, disk, true);
- if (idx < 0)
+ int idx = virDomainDiskIndexByName(persistentDef, disk, true);
+ if (idx < 0) {
+ virReportError(VIR_ERR_INVALID_ARG,
+ _("disk '%s' was not found in the domain config"),
+ disk);
goto endjob;
+ }
reply = persistentDef->disks[idx]->blkdeviotune;
}

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/examples/apparmor/libvirt-lxc
Index: libvirt-1.2.9/examples/apparmor/libvirt-lxc
===================================================================
--- libvirt-1.2.8.orig/examples/apparmor/libvirt-lxc
+++ libvirt-1.2.8/examples/apparmor/libvirt-lxc
--- libvirt-1.2.9.orig/examples/apparmor/libvirt-lxc
+++ libvirt-1.2.9/examples/apparmor/libvirt-lxc
@@ -2,39 +2,15 @@
#include <abstractions/base>

View File

@ -11,21 +11,23 @@ Signed-off-by: Chunyan Liu <cyliu@suse.com>
src/qemu/qemu_driver.c | 7 +++++++
1 file changed, 7 insertions(+)
Index: libvirt-1.2.8/src/qemu/qemu_driver.c
Index: libvirt-1.2.9/src/qemu/qemu_driver.c
===================================================================
--- libvirt-1.2.8.orig/src/qemu/qemu_driver.c
+++ libvirt-1.2.8/src/qemu/qemu_driver.c
@@ -15357,6 +15357,13 @@ qemuDomainBlockCopy(virDomainObjPtr vm,
--- libvirt-1.2.9.orig/src/qemu/qemu_driver.c
+++ libvirt-1.2.9/src/qemu/qemu_driver.c
@@ -15589,6 +15589,15 @@ qemuDomainBlockCopyCommon(virDomainObjPt
virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
_("non-file destination not supported yet"));
}
/* Prepare the destination file. */
+ if (STREQ_NULLABLE(realpath(disk->src->path, NULL), realpath(dest, NULL))) {
+
+ if (STREQ_NULLABLE(realpath(disk->src->path, NULL),
+ realpath(mirror->path, NULL))) {
+ virReportError(VIR_ERR_INVALID_ARG,
+ _("destination '%s' is the same as disk '%s' source"),
+ dest, path);
+ mirror->path, path);
+ goto endjob;
+ }
+
if (stat(dest, &st) < 0) {
if (stat(mirror->path, &st) < 0) {
if (errno != ENOENT) {
virReportSystemError(errno, _("unable to stat for disk %s: %s"),

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/tests/vircgrouptest.c
Index: libvirt-1.2.9/tests/vircgrouptest.c
===================================================================
--- libvirt-1.2.8.orig/tests/vircgrouptest.c
+++ libvirt-1.2.8/tests/vircgrouptest.c
--- libvirt-1.2.9.orig/tests/vircgrouptest.c
+++ libvirt-1.2.9/tests/vircgrouptest.c
@@ -33,7 +33,6 @@
# include "virlog.h"
# include "virfile.h"

View File

@ -8,10 +8,10 @@ uses the 'device_configure' RPC.
This patch changes the xend driver to always call 'device_configure' for
PCI devices to be consistent with the usage in the xen tools.
Index: libvirt-1.2.8/src/xen/xend_internal.c
Index: libvirt-1.2.9/src/xen/xend_internal.c
===================================================================
--- libvirt-1.2.8.orig/src/xen/xend_internal.c
+++ libvirt-1.2.8/src/xen/xend_internal.c
--- libvirt-1.2.9.orig/src/xen/xend_internal.c
+++ libvirt-1.2.9/src/xen/xend_internal.c
@@ -2221,6 +2221,7 @@ xenDaemonAttachDeviceFlags(virConnectPtr
virBuffer buf = VIR_BUFFER_INITIALIZER;
char class[8], ref[80];

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/examples/apparmor/Makefile.am
Index: libvirt-1.2.9/examples/apparmor/Makefile.am
===================================================================
--- libvirt-1.2.8.orig/examples/apparmor/Makefile.am
+++ libvirt-1.2.8/examples/apparmor/Makefile.am
--- libvirt-1.2.9.orig/examples/apparmor/Makefile.am
+++ libvirt-1.2.9/examples/apparmor/Makefile.am
@@ -19,10 +19,22 @@ EXTRA_DIST= \
TEMPLATE.lxc \
libvirt-qemu \
@ -27,10 +27,10 @@ Index: libvirt-1.2.8/examples/apparmor/Makefile.am
apparmordir = $(sysconfdir)/apparmor.d/
apparmor_DATA = \
usr.lib.libvirt.virt-aa-helper \
Index: libvirt-1.2.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
Index: libvirt-1.2.9/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
===================================================================
--- /dev/null
+++ libvirt-1.2.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
+++ libvirt-1.2.9/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
@@ -0,0 +1,48 @@
+# Last Modified: Mon Apr 5 15:10:27 2010
+#include <tunables/global>
@ -80,10 +80,10 @@ Index: libvirt-1.2.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
+ /**.[iI][sS][oO] r,
+ /**/disk{,.*} r,
+}
Index: libvirt-1.2.8/examples/apparmor/usr.sbin.libvirtd.in
Index: libvirt-1.2.9/examples/apparmor/usr.sbin.libvirtd.in
===================================================================
--- /dev/null
+++ libvirt-1.2.8/examples/apparmor/usr.sbin.libvirtd.in
+++ libvirt-1.2.9/examples/apparmor/usr.sbin.libvirtd.in
@@ -0,0 +1,68 @@
+# Last Modified: Mon Apr 5 15:03:58 2010
+#include <tunables/global>
@ -153,9 +153,9 @@ Index: libvirt-1.2.8/examples/apparmor/usr.sbin.libvirtd.in
+ change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*,
+
+}
Index: libvirt-1.2.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper
Index: libvirt-1.2.9/examples/apparmor/usr.lib.libvirt.virt-aa-helper
===================================================================
--- libvirt-1.2.8.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
--- libvirt-1.2.9.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+++ /dev/null
@@ -1,48 +0,0 @@
-# Last Modified: Mon Apr 5 15:10:27 2010
@ -206,9 +206,9 @@ Index: libvirt-1.2.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper
- /**.[iI][sS][oO] r,
- /**/disk{,.*} r,
-}
Index: libvirt-1.2.8/examples/apparmor/usr.sbin.libvirtd
Index: libvirt-1.2.9/examples/apparmor/usr.sbin.libvirtd
===================================================================
--- libvirt-1.2.8.orig/examples/apparmor/usr.sbin.libvirtd
--- libvirt-1.2.9.orig/examples/apparmor/usr.sbin.libvirtd
+++ /dev/null
@@ -1,63 +0,0 @@
-# Last Modified: Mon Apr 5 15:03:58 2010

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3adc681cf4477a0f4ee4ff3e5ce08c0d50c17d63dd0a460587e90db482fcc05b
size 21498750

3
libvirt-1.2.9.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:95931a5a52f451b9ab73d6a5ae11a5740e1ba69a66520c2a0cffc6068a7e8fc4
size 30154430

7
libvirt-1.2.9.tar.gz.asc Normal file
View File

@ -0,0 +1,7 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iEYEABECAAYFAlQrvjoACgkQRga4pd6VvB/bJwCfasEmR26TtY5jQNlVG6ChqYHU
bhwAnRMdkTBkoQsPLMuKQYpeLtpFKfkX
=VHOB
-----END PGP SIGNATURE-----

View File

@ -1,9 +1,9 @@
Adjust libvirt-guests init files to conform to SUSE standards
Index: libvirt-1.2.8/tools/libvirt-guests.init.in
Index: libvirt-1.2.9/tools/libvirt-guests.init.in
===================================================================
--- libvirt-1.2.8.orig/tools/libvirt-guests.init.in
+++ libvirt-1.2.8/tools/libvirt-guests.init.in
--- libvirt-1.2.9.orig/tools/libvirt-guests.init.in
+++ libvirt-1.2.9/tools/libvirt-guests.init.in
@@ -3,15 +3,15 @@
# the following is the LSB init header
#
@ -28,10 +28,10 @@ Index: libvirt-1.2.8/tools/libvirt-guests.init.in
### END INIT INFO
# the following is chkconfig init header
Index: libvirt-1.2.8/tools/libvirt-guests.sh.in
Index: libvirt-1.2.9/tools/libvirt-guests.sh.in
===================================================================
--- libvirt-1.2.8.orig/tools/libvirt-guests.sh.in
+++ libvirt-1.2.8/tools/libvirt-guests.sh.in
--- libvirt-1.2.9.orig/tools/libvirt-guests.sh.in
+++ libvirt-1.2.9/tools/libvirt-guests.sh.in
@@ -16,14 +16,13 @@
# License along with this library. If not, see
# <http://www.gnu.org/licenses/>.
@ -189,10 +189,10 @@ Index: libvirt-1.2.8/tools/libvirt-guests.sh.in
esac
-exit $RETVAL
+rc_exit
Index: libvirt-1.2.8/tools/libvirt-guests.sysconf
Index: libvirt-1.2.9/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-1.2.8.orig/tools/libvirt-guests.sysconf
+++ libvirt-1.2.8/tools/libvirt-guests.sysconf
--- libvirt-1.2.9.orig/tools/libvirt-guests.sysconf
+++ libvirt-1.2.9/tools/libvirt-guests.sysconf
@@ -1,19 +1,29 @@
+## Path: System/Virtualization/libvirt-guests
+

View File

@ -1,30 +0,0 @@
From 79a752f1eb5a6b6b4b900d8899dfb9712be824ec Mon Sep 17 00:00:00 2001
From: Jim Fehlig <jfehlig@suse.com>
Date: Mon, 8 Sep 2014 10:22:14 -0600
Subject: [PATCH] libvirt-guests: wait for ntp service
If an NTP server is configured on the host, it is possible for
libvirt-guests to start before the NTP service, in which case
guest clocks won't be synchronized to the host clock.
Add ntp-wait.service to "After" in libvirt-guests systemd service
file, ensuring NTP has synchronized the host clock before starting
any guests.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
---
tools/libvirt-guests.service.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: libvirt-1.2.8/tools/libvirt-guests.service.in
===================================================================
--- libvirt-1.2.8.orig/tools/libvirt-guests.service.in
+++ libvirt-1.2.8/tools/libvirt-guests.service.in
@@ -1,6 +1,6 @@
[Unit]
Description=Suspend Active Libvirt Guests
-After=network.target libvirtd.service
+After=network.target libvirtd.service ntp-wait.service
Documentation=man:libvirtd(8)
Documentation=http://libvirt.org

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/src/cpu/cpu_map.xml
Index: libvirt-1.2.9/src/cpu/cpu_map.xml
===================================================================
--- libvirt-1.2.8.orig/src/cpu/cpu_map.xml
+++ libvirt-1.2.8/src/cpu/cpu_map.xml
--- libvirt-1.2.9.orig/src/cpu/cpu_map.xml
+++ libvirt-1.2.9/src/cpu/cpu_map.xml
@@ -627,5 +627,15 @@
<pvr value='0x004b0100'/>
</model>

View File

@ -1,8 +1,8 @@
Index: libvirt-1.2.8/src/conf/domain_conf.c
Index: libvirt-1.2.9/src/conf/domain_conf.c
===================================================================
--- libvirt-1.2.8.orig/src/conf/domain_conf.c
+++ libvirt-1.2.8/src/conf/domain_conf.c
@@ -9690,7 +9690,8 @@ virDomainVideoDefaultType(const virDomai
--- libvirt-1.2.9.orig/src/conf/domain_conf.c
+++ libvirt-1.2.9/src/conf/domain_conf.c
@@ -9863,7 +9863,8 @@ virDomainVideoDefaultType(const virDomai
(STREQ(def->os.type, "xen") ||
STREQ(def->os.type, "linux")))
return VIR_DOMAIN_VIDEO_TYPE_XEN;
@ -12,10 +12,10 @@ Index: libvirt-1.2.8/src/conf/domain_conf.c
return VIR_DOMAIN_VIDEO_TYPE_VGA;
else
return VIR_DOMAIN_VIDEO_TYPE_CIRRUS;
Index: libvirt-1.2.8/src/cpu/cpu_powerpc.c
Index: libvirt-1.2.9/src/cpu/cpu_powerpc.c
===================================================================
--- libvirt-1.2.8.orig/src/cpu/cpu_powerpc.c
+++ libvirt-1.2.8/src/cpu/cpu_powerpc.c
--- libvirt-1.2.9.orig/src/cpu/cpu_powerpc.c
+++ libvirt-1.2.9/src/cpu/cpu_powerpc.c
@@ -38,7 +38,7 @@
VIR_LOG_INIT("cpu.cpu_powerpc");
@ -25,21 +25,21 @@ Index: libvirt-1.2.8/src/cpu/cpu_powerpc.c
struct ppc_vendor {
char *name;
Index: libvirt-1.2.8/src/qemu/qemu_capabilities.c
Index: libvirt-1.2.9/src/qemu/qemu_capabilities.c
===================================================================
--- libvirt-1.2.8.orig/src/qemu/qemu_capabilities.c
+++ libvirt-1.2.8/src/qemu/qemu_capabilities.c
@@ -631,7 +631,8 @@ virQEMUCapsProbeCPUModels(virQEMUCapsPtr
--- libvirt-1.2.9.orig/src/qemu/qemu_capabilities.c
+++ libvirt-1.2.9/src/qemu/qemu_capabilities.c
@@ -632,7 +632,8 @@ virQEMUCapsProbeCPUModels(virQEMUCapsPtr
if (qemuCaps->arch == VIR_ARCH_I686 ||
qemuCaps->arch == VIR_ARCH_X86_64)
qemuCaps->arch == VIR_ARCH_X86_64) {
parse = virQEMUCapsParseX86Models;
- else if (qemuCaps->arch == VIR_ARCH_PPC64)
+ else if (qemuCaps->arch == VIR_ARCH_PPC64 ||
+ qemuCaps->arch == VIR_ARCH_PPC64LE)
- } else if (qemuCaps->arch == VIR_ARCH_PPC64) {
+ } else if (qemuCaps->arch == VIR_ARCH_PPC64 ||
+ qemuCaps->arch == VIR_ARCH_PPC64LE) {
parse = virQEMUCapsParsePPCModels;
else {
} else {
VIR_DEBUG("don't know how to parse %s CPU models",
@@ -1996,7 +1997,8 @@ bool virQEMUCapsHasPCIMultiBus(virQEMUCa
@@ -2001,7 +2002,8 @@ bool virQEMUCapsHasPCIMultiBus(virQEMUCa
return true;
if (def->os.arch == VIR_ARCH_PPC ||
@ -49,7 +49,7 @@ Index: libvirt-1.2.8/src/qemu/qemu_capabilities.c
/*
* Usage of pci.0 naming:
*
@@ -3567,7 +3569,9 @@ virQEMUCapsSupportsChardev(virDomainDefP
@@ -3571,7 +3573,9 @@ virQEMUCapsSupportsChardev(virDomainDefP
!virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE))
return false;
@ -60,41 +60,41 @@ Index: libvirt-1.2.8/src/qemu/qemu_capabilities.c
/* only pseries need -device spapr-vty with -chardev */
return (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL &&
chr->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO);
Index: libvirt-1.2.8/src/qemu/qemu_command.c
Index: libvirt-1.2.9/src/qemu/qemu_command.c
===================================================================
--- libvirt-1.2.8.orig/src/qemu/qemu_command.c
+++ libvirt-1.2.8/src/qemu/qemu_command.c
@@ -703,7 +703,8 @@ qemuSetSCSIControllerModel(virDomainDefP
--- libvirt-1.2.9.orig/src/qemu/qemu_command.c
+++ libvirt-1.2.9/src/qemu/qemu_command.c
@@ -713,7 +713,8 @@ qemuSetSCSIControllerModel(virDomainDefP
return -1;
}
} else {
- if ((def->os.arch == VIR_ARCH_PPC64) &&
+ if ((def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STREQ(def->os.machine, "pseries")) {
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STRPREFIX(def->os.machine, "pseries")) {
*model = VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI;
} else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SCSI_LSI)) {
@@ -1250,7 +1251,8 @@ int qemuDomainAssignSpaprVIOAddresses(vi
@@ -1260,7 +1261,8 @@ int qemuDomainAssignSpaprVIOAddresses(vi
for (i = 0; i < def->nserials; i++) {
if (def->serials[i]->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL &&
- (def->os.arch == VIR_ARCH_PPC64) &&
+ (def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STREQ(def->os.machine, "pseries"))
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STRPREFIX(def->os.machine, "pseries"))
def->serials[i]->info.type = VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO;
if (qemuAssignSpaprVIOAddress(def, &def->serials[i]->info,
@@ -1259,7 +1261,8 @@ int qemuDomainAssignSpaprVIOAddresses(vi
@@ -1269,7 +1271,8 @@ int qemuDomainAssignSpaprVIOAddresses(vi
}
if (def->nvram) {
- if (def->os.arch == VIR_ARCH_PPC64 &&
+ if ((def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STREQ(def->os.machine, "pseries"))
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STRPREFIX(def->os.machine, "pseries"))
def->nvram->info.type = VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO;
if (qemuAssignSpaprVIOAddress(def, &def->nvram->info,
@@ -4147,7 +4150,8 @@ qemuBuildUSBControllerDevStr(virDomainDe
@@ -4191,7 +4194,8 @@ qemuBuildUSBControllerDevStr(virDomainDe
model = def->model;
if (model == -1) {
@ -104,7 +104,7 @@ Index: libvirt-1.2.8/src/qemu/qemu_command.c
model = VIR_DOMAIN_CONTROLLER_MODEL_USB_PCI_OHCI;
else
model = VIR_DOMAIN_CONTROLLER_MODEL_USB_PIIX3_UHCI;
@@ -8176,7 +8180,8 @@ qemuBuildCommandLine(virConnectPtr conn,
@@ -8421,7 +8425,8 @@ qemuBuildCommandLine(virConnectPtr conn,
!qemuDomainMachineIsQ35(def) &&
(!virQEMUCapsGet(qemuCaps, QEMU_CAPS_PIIX3_USB_UHCI) ||
(!virQEMUCapsGet(qemuCaps, QEMU_CAPS_PCI_OHCI) &&
@ -114,71 +114,79 @@ Index: libvirt-1.2.8/src/qemu/qemu_command.c
if (usblegacy) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("Multiple legacy USB controllers are "
@@ -9366,7 +9371,8 @@ qemuBuildCommandLine(virConnectPtr conn,
@@ -9619,7 +9624,8 @@ qemuBuildCommandLine(virConnectPtr conn,
}
if (def->nvram) {
- if (def->os.arch == VIR_ARCH_PPC64 &&
+ if ((def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STREQ(def->os.machine, "pseries")) {
+ def->os.arch == VIR_ARCH_PPC64LE) &&
STRPREFIX(def->os.machine, "pseries")) {
if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_NVRAM)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
@@ -9478,7 +9484,8 @@ qemuBuildSerialChrDeviceStr(char **devic
@@ -9737,7 +9743,8 @@ qemuBuildSerialChrDeviceStr(char **devic
{
virBuffer cmd = VIR_BUFFER_INITIALIZER;
- if ((arch == VIR_ARCH_PPC64) && STREQ(machine, "pseries")) {
- if ((arch == VIR_ARCH_PPC64) && STRPREFIX(machine, "pseries")) {
+ if ((arch == VIR_ARCH_PPC64 ||
+ arch == VIR_ARCH_PPC64LE) && STREQ(machine, "pseries")) {
+ arch == VIR_ARCH_PPC64LE) && STRPREFIX(machine, "pseries")) {
if (serial->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL &&
serial->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) {
virBufferAsprintf(&cmd, "spapr-vty,chardev=char%s",
@@ -9900,7 +9907,8 @@ qemuParseCommandLineDisk(virDomainXMLOpt
@@ -10159,8 +10166,9 @@ qemuParseCommandLineDisk(virDomainXMLOpt
if (VIR_ALLOC(def->src) < 0)
goto error;
- if (((dom->os.arch == VIR_ARCH_PPC64) &&
- dom->os.machine && STRPREFIX(dom->os.machine, "pseries")))
+ if (((dom->os.arch == VIR_ARCH_PPC64 ||
+ dom->os.arch == VIR_ARCH_PPC64LE) &&
dom->os.machine && STREQ(dom->os.machine, "pseries")))
+ dom->os.arch == VIR_ARCH_PPC64LE) &&
+ dom->os.machine && STRPREFIX(dom->os.machine, "pseries")))
def->bus = VIR_DOMAIN_DISK_BUS_SCSI;
else
@@ -9992,7 +10000,8 @@ qemuParseCommandLineDisk(virDomainXMLOpt
def->bus = VIR_DOMAIN_DISK_BUS_IDE;
@@ -10252,7 +10260,8 @@ qemuParseCommandLineDisk(virDomainXMLOpt
} else if (STREQ(keywords[i], "if")) {
if (STREQ(values[i], "ide")) {
def->bus = VIR_DOMAIN_DISK_BUS_IDE;
- if (((dom->os.arch == VIR_ARCH_PPC64) &&
+ if (((dom->os.arch == VIR_ARCH_PPC64 ||
+ dom->os.arch == VIR_ARCH_PPC64LE) &&
dom->os.machine && STREQ(dom->os.machine, "pseries"))) {
+ dom->os.arch == VIR_ARCH_PPC64LE) &&
dom->os.machine && STRPREFIX(dom->os.machine, "pseries"))) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("pseries systems do not support ide devices '%s'"), val);
@@ -11233,7 +11242,8 @@ qemuParseCommandLine(virCapsPtr qemuCaps
disk->src->type = VIR_STORAGE_TYPE_FILE;
@@ -11497,8 +11506,9 @@ qemuParseCommandLine(virCapsPtr qemuCaps
}
if (STREQ(arg, "-cdrom")) {
disk->device = VIR_DOMAIN_DISK_DEVICE_CDROM;
- if (((def->os.arch == VIR_ARCH_PPC64) &&
- def->os.machine && STRPREFIX(def->os.machine, "pseries")))
+ if (((def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
def->os.machine && STREQ(def->os.machine, "pseries")))
+ def->os.arch == VIR_ARCH_PPC64LE) &&
+ def->os.machine && STRPREFIX(def->os.machine, "pseries")))
disk->bus = VIR_DOMAIN_DISK_BUS_SCSI;
if (VIR_STRDUP(disk->dst, "hdc") < 0)
@@ -11249,7 +11259,8 @@ qemuParseCommandLine(virCapsPtr qemuCaps
goto error;
@@ -11513,9 +11523,10 @@ qemuParseCommandLine(virCapsPtr qemuCaps
disk->bus = VIR_DOMAIN_DISK_BUS_IDE;
else
disk->bus = VIR_DOMAIN_DISK_BUS_SCSI;
- if (((def->os.arch == VIR_ARCH_PPC64) &&
+ if (((def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
def->os.machine && STREQ(def->os.machine, "pseries")))
disk->bus = VIR_DOMAIN_DISK_BUS_SCSI;
- def->os.machine && STRPREFIX(def->os.machine, "pseries")))
- disk->bus = VIR_DOMAIN_DISK_BUS_SCSI;
+ if (((def->os.arch == VIR_ARCH_PPC64 ||
+ def->os.arch == VIR_ARCH_PPC64LE) &&
+ def->os.machine && STRPREFIX(def->os.machine, "pseries")))
+ disk->bus = VIR_DOMAIN_DISK_BUS_SCSI;
}
Index: libvirt-1.2.8/src/qemu/qemu_domain.c
if (VIR_STRDUP(disk->dst, arg + 1) < 0)
goto error;
Index: libvirt-1.2.9/src/qemu/qemu_domain.c
===================================================================
--- libvirt-1.2.8.orig/src/qemu/qemu_domain.c
+++ libvirt-1.2.8/src/qemu/qemu_domain.c
@@ -754,6 +754,7 @@ qemuDomainDefPostParse(virDomainDefPtr d
--- libvirt-1.2.9.orig/src/qemu/qemu_domain.c
+++ libvirt-1.2.9/src/qemu/qemu_domain.c
@@ -980,6 +980,7 @@ qemuDomainDefPostParse(virDomainDefPtr d
break;
case VIR_ARCH_PPC64:

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/configure.ac
Index: libvirt-1.2.9/configure.ac
===================================================================
--- libvirt-1.2.8.orig/configure.ac
+++ libvirt-1.2.8/configure.ac
--- libvirt-1.2.9.orig/configure.ac
+++ libvirt-1.2.9/configure.ac
@@ -237,6 +237,7 @@ LIBVIRT_CHECK_FUSE
LIBVIRT_CHECK_GLUSTER
LIBVIRT_CHECK_HAL
@ -10,7 +10,7 @@ Index: libvirt-1.2.8/configure.ac
LIBVIRT_CHECK_NUMACTL
LIBVIRT_CHECK_OPENWSMAN
LIBVIRT_CHECK_PCIACCESS
@@ -2454,11 +2455,12 @@ if test "$with_libvirtd" = "no" ; then
@@ -2456,11 +2457,12 @@ if test "$with_libvirtd" = "no" ; then
with_interface=no
fi
@ -26,7 +26,7 @@ Index: libvirt-1.2.8/configure.ac
esac
if test "$with_interface" = "yes" ; then
@@ -2880,6 +2882,7 @@ LIBVIRT_RESULT_FUSE
@@ -2882,6 +2884,7 @@ LIBVIRT_RESULT_FUSE
LIBVIRT_RESULT_GLUSTER
LIBVIRT_RESULT_HAL
LIBVIRT_RESULT_NETCF
@ -34,11 +34,11 @@ Index: libvirt-1.2.8/configure.ac
LIBVIRT_RESULT_NUMACTL
LIBVIRT_RESULT_OPENWSMAN
LIBVIRT_RESULT_PCIACCESS
Index: libvirt-1.2.8/src/Makefile.am
Index: libvirt-1.2.9/src/Makefile.am
===================================================================
--- libvirt-1.2.8.orig/src/Makefile.am
+++ libvirt-1.2.8/src/Makefile.am
@@ -823,6 +823,10 @@ if WITH_NETCF
--- libvirt-1.2.9.orig/src/Makefile.am
+++ libvirt-1.2.9/src/Makefile.am
@@ -826,6 +826,10 @@ if WITH_NETCF
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_netcf.c
endif WITH_NETCF
@ -49,7 +49,7 @@ Index: libvirt-1.2.8/src/Makefile.am
if WITH_UDEV
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_udev.c
@@ -1458,10 +1462,15 @@ if WITH_NETCF
@@ -1465,10 +1469,15 @@ if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
else ! WITH_NETCF
@ -65,11 +65,11 @@ Index: libvirt-1.2.8/src/Makefile.am
endif ! WITH_NETCF
if WITH_DRIVER_MODULES
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
Index: libvirt-1.2.8/tools/virsh.c
Index: libvirt-1.2.9/tools/virsh.c
===================================================================
--- libvirt-1.2.8.orig/tools/virsh.c
+++ libvirt-1.2.8/tools/virsh.c
@@ -3320,6 +3320,8 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
--- libvirt-1.2.9.orig/tools/virsh.c
+++ libvirt-1.2.9/tools/virsh.c
@@ -3340,6 +3340,8 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
vshPrint(ctl, " netcf");
@ -78,10 +78,10 @@ Index: libvirt-1.2.8/tools/virsh.c
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
Index: libvirt-1.2.8/src/interface/interface_backend_netcf.c
Index: libvirt-1.2.9/src/interface/interface_backend_netcf.c
===================================================================
--- libvirt-1.2.8.orig/src/interface/interface_backend_netcf.c
+++ libvirt-1.2.8/src/interface/interface_backend_netcf.c
--- libvirt-1.2.9.orig/src/interface/interface_backend_netcf.c
+++ libvirt-1.2.9/src/interface/interface_backend_netcf.c
@@ -23,7 +23,12 @@
#include <config.h>
@ -165,10 +165,10 @@ Index: libvirt-1.2.8/src/interface/interface_backend_netcf.c
return 0;
}
Index: libvirt-1.2.8/src/interface/interface_driver.c
Index: libvirt-1.2.9/src/interface/interface_driver.c
===================================================================
--- libvirt-1.2.8.orig/src/interface/interface_driver.c
+++ libvirt-1.2.8/src/interface/interface_driver.c
--- libvirt-1.2.9.orig/src/interface/interface_driver.c
+++ libvirt-1.2.9/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@ -186,10 +186,10 @@ Index: libvirt-1.2.8/src/interface/interface_driver.c
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
Index: libvirt-1.2.8/m4/virt-netcontrol.m4
Index: libvirt-1.2.9/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
+++ libvirt-1.2.8/m4/virt-netcontrol.m4
+++ libvirt-1.2.9/m4/virt-netcontrol.m4
@@ -0,0 +1,35 @@
+dnl The libnetcontrol library
+dnl

View File

@ -1,3 +1,21 @@
-------------------------------------------------------------------
Wed Oct 1 11:53:17 MDT 2014 - jfehlig@suse.com
- Update to libvirt 1.2.9
- Introduce virNodeAllocPages
- event: introduce new event for tunable values
- Add support for fetching statistics of completed jobs
- CVE-2014-3657: domain_conf: fix domain deadlock
- CVE-2014-3633: qemu: blkiotune: Use correct definition when
looking up disk
- Many incremental improvements and bug fixes, see
http://libvirt.org/news.html
- Drop upstream patches: 3e745e8f-CVE-2014-3633.patch,
libvirt-guests-wait-for-ntp.patch
- Verify tarball with associated .asc file
Add: libvirt.keyring, libvirt-1.2.9.tar.gz.asc
Use upstream .gz tarball instead of locally generated .bz2
-------------------------------------------------------------------
Thu Sep 18 22:42:38 MDT 2014 - jfehlig@suse.com

78
libvirt.keyring Normal file
View File

@ -0,0 +1,78 @@
user: "Daniel Veillard (Red Hat work email) <veillard@redhat.com>"
1024-bit DSA key, ID DE95BC1F, created 2000-05-31
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: SKS 1.1.4
Comment: Hostname: pgp.mit.edu
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
lvOUhgA69SI=
=aP5f
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -235,7 +235,7 @@
Name: libvirt
Url: http://libvirt.org/
Version: 1.2.8
Version: 1.2.9
Release: 0
Summary: Library providing a simple virtualization API
License: LGPL-2.1+
@ -423,15 +423,18 @@ BuildRequires: systemtap-sdt-devel
%if %{with_numad}
BuildRequires: numad
%endif
%if 0%{?suse_version} > 1220
BuildRequires: gpg-offline
%endif
Source0: %{name}-%{version}.tar.bz2
Source1: libvirtd.init
Source2: libvirtd-relocation-server.fw
Source0: %{name}-%{version}.tar.gz
Source1: %{name}-%{version}.tar.gz.asc
Source2: %{name}.keyring
Source3: libvirtd.init
Source4: libvirtd-relocation-server.fw
Source99: baselibs.conf
# Upstream patches
Patch0: 3e745e8f-CVE-2014-3633.patch
# Patches pending upstream review
Patch100: libvirt-guests-wait-for-ntp.patch
# Need to go upstream
Patch150: xen-name-for-devid.patch
Patch151: xen-pv-cdrom.patch
@ -950,9 +953,8 @@ namespaces.
%endif
%prep
%{?gpg_verify: %gpg_verify %{S:1} }
%setup -q
%patch0 -p1
%patch100 -p1
%patch150 -p1
%patch151 -p1
%patch152 -p1
@ -1288,7 +1290,7 @@ rm -f $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/libvirtd
%if %{with_systemd}
ln -s %{_sbindir}/service $RPM_BUILD_ROOT%{_sbindir}/rclibvirtd
%else
install %SOURCE1 $RPM_BUILD_ROOT%{_sysconfdir}/init.d/libvirtd
install %SOURCE3 $RPM_BUILD_ROOT%{_sysconfdir}/init.d/libvirtd
ln -s /etc/init.d/libvirtd $RPM_BUILD_ROOT%{_sbindir}/rclibvirtd
%endif
mv $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/libvirtd $RPM_BUILD_ROOT%{_localstatedir}/adm/fillup-templates/sysconfig.libvirtd
@ -1305,7 +1307,7 @@ mv $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/virtlockd $RPM_BUILD_ROOT%{_localstat
#install firewall definitions format is described here:
#/usr/share/SuSEfirewall2/services/TEMPLATE
mkdir -p $RPM_BUILD_ROOT/%{_fwdefdir}
install -m 644 %{S:2} $RPM_BUILD_ROOT/%{_fwdefdir}/libvirtd-relocation-server
install -m 644 %{S:4} $RPM_BUILD_ROOT/%{_fwdefdir}/libvirtd-relocation-server
%endif
%if %{with_systemd}
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/libvirt-guests

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/daemon/libvirtd.conf
Index: libvirt-1.2.9/daemon/libvirtd.conf
===================================================================
--- libvirt-1.2.8.orig/daemon/libvirtd.conf
+++ libvirt-1.2.8/daemon/libvirtd.conf
--- libvirt-1.2.9.orig/daemon/libvirtd.conf
+++ libvirt-1.2.9/daemon/libvirtd.conf
@@ -18,8 +18,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.
@ -13,10 +13,10 @@ Index: libvirt-1.2.8/daemon/libvirtd.conf
# Listen for unencrypted TCP connections on the public TCP/IP port.
# NB, must pass the --listen flag to the libvirtd process for this to
Index: libvirt-1.2.8/daemon/libvirtd-config.c
Index: libvirt-1.2.9/daemon/libvirtd-config.c
===================================================================
--- libvirt-1.2.8.orig/daemon/libvirtd-config.c
+++ libvirt-1.2.8/daemon/libvirtd-config.c
--- libvirt-1.2.9.orig/daemon/libvirtd-config.c
+++ libvirt-1.2.9/daemon/libvirtd-config.c
@@ -229,7 +229,7 @@ daemonConfigNew(bool privileged ATTRIBUT
if (VIR_ALLOC(data) < 0)
return NULL;
@ -26,10 +26,10 @@ Index: libvirt-1.2.8/daemon/libvirtd-config.c
data->listen_tcp = 0;
if (VIR_STRDUP(data->tls_port, LIBVIRTD_TLS_PORT) < 0 ||
Index: libvirt-1.2.8/daemon/test_libvirtd.aug.in
Index: libvirt-1.2.9/daemon/test_libvirtd.aug.in
===================================================================
--- libvirt-1.2.8.orig/daemon/test_libvirtd.aug.in
+++ libvirt-1.2.8/daemon/test_libvirtd.aug.in
--- libvirt-1.2.9.orig/daemon/test_libvirtd.aug.in
+++ libvirt-1.2.9/daemon/test_libvirtd.aug.in
@@ -2,7 +2,7 @@ module Test_libvirtd =
::CONFIG::

View File

@ -1,9 +1,9 @@
Adjust libvirtd sysconfig file to conform to SUSE standards
Index: libvirt-1.2.8/daemon/libvirtd.sysconf
Index: libvirt-1.2.9/daemon/libvirtd.sysconf
===================================================================
--- libvirt-1.2.8.orig/daemon/libvirtd.sysconf
+++ libvirt-1.2.8/daemon/libvirtd.sysconf
--- libvirt-1.2.9.orig/daemon/libvirtd.sysconf
+++ libvirt-1.2.9/daemon/libvirtd.sysconf
@@ -1,16 +1,25 @@
+## Path: System/Virtualization/libvirt
+

View File

@ -2,10 +2,10 @@ Canonicalize hostarch name ppc64le to ppc64
See bnc#894956
Index: libvirt-1.2.8/src/util/virarch.c
Index: libvirt-1.2.9/src/util/virarch.c
===================================================================
--- libvirt-1.2.8.orig/src/util/virarch.c
+++ libvirt-1.2.8/src/util/virarch.c
--- libvirt-1.2.9.orig/src/util/virarch.c
+++ libvirt-1.2.9/src/util/virarch.c
@@ -169,6 +169,8 @@ virArch virArchFromHost(void)
arch = VIR_ARCH_I686;
} else if (STREQ(ut.machine, "amd64")) {

View File

@ -8,10 +8,10 @@ Subject: [PATCH] support managed pci devices in xen driver
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 15 deletions(-)
Index: libvirt-1.2.8/src/xenconfig/xen_common.c
Index: libvirt-1.2.9/src/xenconfig/xen_common.c
===================================================================
--- libvirt-1.2.8.orig/src/xenconfig/xen_common.c
+++ libvirt-1.2.8/src/xenconfig/xen_common.c
--- libvirt-1.2.9.orig/src/xenconfig/xen_common.c
+++ libvirt-1.2.9/src/xenconfig/xen_common.c
@@ -401,6 +401,8 @@ xenParsePCI(virConfPtr conf, virDomainDe
{
virConfValuePtr list = virConfGetValue(conf, "pci");
@ -66,11 +66,11 @@ Index: libvirt-1.2.8/src/xenconfig/xen_common.c
hostdev->source.subsys.type = VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
hostdev->source.subsys.u.pci.addr.domain = domainID;
hostdev->source.subsys.u.pci.addr.bus = busID;
Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
Index: libvirt-1.2.9/src/xenconfig/xen_sxpr.c
===================================================================
--- libvirt-1.2.8.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-1.2.8/src/xenconfig/xen_sxpr.c
@@ -997,6 +997,7 @@ xenParseSxprPCI(virDomainDefPtr def,
--- libvirt-1.2.9.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-1.2.9/src/xenconfig/xen_sxpr.c
@@ -999,6 +999,7 @@ xenParseSxprPCI(virDomainDefPtr def,
int busID;
int slotID;
int funcID;
@ -78,7 +78,7 @@ Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
node = cur->u.s.car;
if (!sexpr_lookup(node, "dev"))
@@ -1044,11 +1045,13 @@ xenParseSxprPCI(virDomainDefPtr def,
@@ -1046,11 +1047,13 @@ xenParseSxprPCI(virDomainDefPtr def,
goto error;
}
@ -93,7 +93,7 @@ Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
dev->source.subsys.type = VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
dev->source.subsys.u.pci.addr.domain = domainID;
dev->source.subsys.u.pci.addr.bus = busID;
@@ -1990,11 +1993,15 @@ static void
@@ -1993,11 +1996,15 @@ static void
xenFormatSxprPCI(virDomainHostdevDefPtr def,
virBufferPtr buf)
{
@ -110,7 +110,7 @@ Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
}
@@ -2013,12 +2020,6 @@ xenFormatSxprOnePCI(virDomainHostdevDefP
@@ -2016,12 +2023,6 @@ xenFormatSxprOnePCI(virDomainHostdevDefP
virBufferPtr buf,
int detach)
{
@ -123,7 +123,7 @@ Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
virBufferAddLit(buf, "(pci ");
xenFormatSxprPCI(def, buf);
if (detach)
@@ -2073,12 +2074,6 @@ xenFormatSxprAllPCI(virDomainDefPtr def,
@@ -2076,12 +2077,6 @@ xenFormatSxprAllPCI(virDomainDefPtr def,
for (i = 0; i < def->nhostdevs; i++) {
if (def->hostdevs[i]->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
def->hostdevs[i]->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI) {

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/src/qemu/qemu.conf
Index: libvirt-1.2.9/src/qemu/qemu.conf
===================================================================
--- libvirt-1.2.8.orig/src/qemu/qemu.conf
+++ libvirt-1.2.8/src/qemu/qemu.conf
--- libvirt-1.2.9.orig/src/qemu/qemu.conf
+++ libvirt-1.2.9/src/qemu/qemu.conf
@@ -200,7 +200,16 @@
# a special value; security_driver can be set to that value in
# isolation, but it cannot appear in a list of drivers.
@ -19,7 +19,7 @@ Index: libvirt-1.2.8/src/qemu/qemu.conf
# If set to non-zero, then the default security labeling
# will make guests confined. If set to zero, then guests
@@ -409,11 +418,22 @@
@@ -417,11 +426,22 @@
#allow_disk_format_probing = 1

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.8/daemon/libvirtd.service.in
Index: libvirt-1.2.9/daemon/libvirtd.service.in
===================================================================
--- libvirt-1.2.8.orig/daemon/libvirtd.service.in
+++ libvirt-1.2.8/daemon/libvirtd.service.in
--- libvirt-1.2.9.orig/daemon/libvirtd.service.in
+++ libvirt-1.2.9/daemon/libvirtd.service.in
@@ -5,6 +5,8 @@ After=network.target
After=dbus.service
After=iscsid.service

View File

@ -1,9 +1,9 @@
Adjust virtlockd init files to conform to SUSE standards
Index: libvirt-1.2.8/src/locking/virtlockd.sysconf
Index: libvirt-1.2.9/src/locking/virtlockd.sysconf
===================================================================
--- libvirt-1.2.8.orig/src/locking/virtlockd.sysconf
+++ libvirt-1.2.8/src/locking/virtlockd.sysconf
--- libvirt-1.2.9.orig/src/locking/virtlockd.sysconf
+++ libvirt-1.2.9/src/locking/virtlockd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlockd
+
@ -12,10 +12,10 @@ Index: libvirt-1.2.8/src/locking/virtlockd.sysconf
#
# Pass extra arguments to virtlockd
#VIRTLOCKD_ARGS=
Index: libvirt-1.2.8/src/locking/virtlockd.init.in
Index: libvirt-1.2.9/src/locking/virtlockd.init.in
===================================================================
--- libvirt-1.2.8.orig/src/locking/virtlockd.init.in
+++ libvirt-1.2.8/src/locking/virtlockd.init.in
--- libvirt-1.2.9.orig/src/locking/virtlockd.init.in
+++ libvirt-1.2.9/src/locking/virtlockd.init.in
@@ -4,12 +4,14 @@
# http://www.linux-foundation.org/spec//booksets/LSB-Core-generic/LSB-Core-generic.html#INITSCRCOMCONV
#

View File

@ -14,10 +14,10 @@
is inactive. We obviously can't search xenstore when the domain is
inactive.
Index: libvirt-1.2.8/src/xen/xend_internal.c
Index: libvirt-1.2.9/src/xen/xend_internal.c
===================================================================
--- libvirt-1.2.8.orig/src/xen/xend_internal.c
+++ libvirt-1.2.8/src/xen/xend_internal.c
--- libvirt-1.2.9.orig/src/xen/xend_internal.c
+++ libvirt-1.2.9/src/xen/xend_internal.c
@@ -72,7 +72,7 @@ VIR_LOG_INIT("xen.xend_internal");
#define XEND_RCV_BUF_MAX_LEN (256 * 1024)
@ -27,7 +27,7 @@ Index: libvirt-1.2.8/src/xen/xend_internal.c
virDomainDeviceDefPtr dev, char *class,
char *ref, int ref_len);
@@ -3328,37 +3328,35 @@ xenDaemonDomainBlockPeek(virConnectPtr c
@@ -3325,37 +3325,35 @@ xenDaemonDomainBlockPeek(virConnectPtr c
* Returns 0 in case of success, -1 in case of failure.
*/
static int
@ -80,7 +80,7 @@ Index: libvirt-1.2.8/src/xen/xend_internal.c
} else if (dev->type == VIR_DOMAIN_DEVICE_NET) {
char mac[VIR_MAC_STRING_BUFLEN];
virDomainNetDefPtr netdef = dev->data.net;
@@ -3366,16 +3364,22 @@ virDomainXMLDevID(virConnectPtr conn,
@@ -3363,16 +3361,22 @@ virDomainXMLDevID(virConnectPtr conn,
strcpy(class, "vif");
@ -113,7 +113,7 @@ Index: libvirt-1.2.8/src/xen/xend_internal.c
} else if (dev->type == VIR_DOMAIN_DEVICE_HOSTDEV &&
dev->data.hostdev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
dev->data.hostdev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI) {
@@ -3391,17 +3395,44 @@ virDomainXMLDevID(virConnectPtr conn,
@@ -3388,17 +3392,44 @@ virDomainXMLDevID(virConnectPtr conn,
strcpy(class, "pci");

View File

@ -1,8 +1,8 @@
Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
Index: libvirt-1.2.9/src/xenconfig/xen_sxpr.c
===================================================================
--- libvirt-1.2.8.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-1.2.8/src/xenconfig/xen_sxpr.c
@@ -332,7 +332,7 @@ xenParseSxprChar(const char *value,
--- libvirt-1.2.9.orig/src/xenconfig/xen_sxpr.c
+++ libvirt-1.2.9/src/xenconfig/xen_sxpr.c
@@ -334,7 +334,7 @@ xenParseSxprChar(const char *value,
static int
xenParseSxprDisks(virDomainDefPtr def,
const struct sexpr *root,
@ -11,7 +11,7 @@ Index: libvirt-1.2.8/src/xenconfig/xen_sxpr.c
int xendConfigVersion)
{
const struct sexpr *cur, *node;
@@ -383,7 +383,6 @@ xenParseSxprDisks(virDomainDefPtr def,
@@ -385,7 +385,6 @@ xenParseSxprDisks(virDomainDefPtr def,
/* There is a case without the uname to the CD-ROM device */
offset = strchr(dst, ':');
if (!offset ||