Hello community,

here is the log from the commit of package kvm for openSUSE:Factory checked in 
at 2012-12-12 13:27:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kvm (Old)
 and      /work/SRC/openSUSE:Factory/.kvm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kvm", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kvm/kvm.changes  2012-09-06 08:55:58.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.kvm.new/kvm.changes     2012-12-12 
13:27:36.000000000 +0100
@@ -1,0 +2,57 @@
+Mon Dec 10 03:46:19 UTC 2012 - [email protected]
+
+- Update to qemu-kvm v1.3.0. For changes see:
+  http://wiki.qemu.org/ChangeLog/1.3
+  Some select features include:
+  - all remaining differences between qemu-kvm.git and qemu.git
+    have been merged into qemu.git (tarball source)
+  - QEMU can now use the Linux VFIO driver for guest PCI devices
+  - USB3 has been vastly improved, including support for USB mass
+    storage devices and MSI/MSI-X support for the XHCI controller
+  - New paravirtualized hardware random number generator device
+  - New block jobs: live block commit (a.k.a. snapshot deletion)
+    and live disk mirroring (a.k.a "storage migration")
+  - New CPU models: "Haswell" and "Opteron_G5"
+  - USB redirection now supports live migration
+  - NBD block devices can now be specified using URI syntax
+  - QEMU embeds an NBD server, accessible via the monitor
+  - Improved support for sandboxing using seccomp mode 2
+- Update to latest seabios sources (git id: 8b73b83)
+- Update to latest ipxe sources (git id: 717279a)
+
+-------------------------------------------------------------------
+Sat Nov 17 10:43:21 UTC 2012 - [email protected]
+
+- Fix build with glibc 2.17 (add patch kvm-glibc217.patch).
+
+-------------------------------------------------------------------
+Fri Nov  9 14:23:54 UTC 2012 - [email protected]
+
+- Revert serial retry logic (bnc#779727)
+
+-------------------------------------------------------------------
+Tue Sep 18 10:04:09 UTC 2012 - [email protected]
+
+- Don't strip binaries
+
+-------------------------------------------------------------------
+Thu Sep 13 23:45:51 UTC 2012 - [email protected]
+
+- Fix build issues for i586 SLE_11_SP2
+
+-------------------------------------------------------------------
+Thu Sep  6 18:52:07 UTC 2012 - [email protected]
+
+- Update to qemu-kvm v1.2.0. For changes see:
+  http://wiki.qemu.org/ChangeLog/1.2
+- Update seabios to v1.7.1. For changes see: seabios.org/Releases
+- Update to current ipxe (git id e6427b7)
+
+-------------------------------------------------------------------
+Wed Sep  5 16:15:43 UTC 2012 - [email protected]
+
+- Add libjpeg-devel and libpng-devel BuildRequires and remove
+  --disable-vnc-jpeg and --disable-vnc-png configure flags in order
+  to enable VNC jpeg and png support.
+
+-------------------------------------------------------------------

Old:
----
  S390-hp-0001--S390-Add-hotplug-support.patch
  S390-hp-0002-Compile-device-hotplug-on-all-targets.patch
  S390-hp-0003-Add-generic-drive-hotplugging.patch
  S390-hp-0004-Expose-drive_add-on-all-architectures.patch
  S390-no-tpr.patch
  ipxe-git-a05871d.tar.bz2
  kvm-qemu-madvise-hugepages.patch
  kvm-qemu-preXX-configure-avoid-compiler-warning-in-pipe2-detection.patch
  kvm-qemu-preXX-console-bounds-check-whenever-changing-the-cursor-du.patch
  kvm-qemu-preXX-use--libexecdir-instead-of-ignoring.patch
  qemu-kvm-1.2.rc1.tar.bz2
  seabios-Makefile-fix-iasl-option-detection.patch
  seabios-git-7a39e72.tar.bz2

New:
----
  ipxe-717279a.tar.bz2
  kvm-glibc217.patch
  kvm-qemu-avoid-redunant-declaration-error.patch
  kvm-qemu-enable-kvm-acceleration.patch
  kvm-qemu-make-rtl8139-default-nic.patch
  kvm-qemu-preXX-serial-retry-revert.patch
  kvm-qemu-provide-__u64-for-broken-sys-capability-h.patch
  qemu-1.3.0.tar.bz2
  seabios-8b73b83.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kvm.spec ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:39.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:39.000000000 +0100
@@ -19,11 +19,11 @@
 
 %bcond_without spice
 
-%define package_true_version 1.2.rc1
-%define package_base_version 1.2.0
-%define bios_id seabios-git-7a39e72
-# (this is post v1.7.0 upstream seabios code)
-%define pxe_rom_id ipxe-git-a05871d
+%define package_true_version 1.3.0
+%define package_base_version 1.3.0
+%define bios_id seabios-8b73b83
+# (this is post v1.7.1 upstream seabios code)
+%define pxe_rom_id ipxe-717279a
 # (this is post v1.0.0 upstream ipxe code)
 %define vgabios_id vgabios-0.6c
 # sgabios comes from: http://sgabios.googlecode.com/svn/trunk, Rev 8
@@ -59,6 +59,8 @@
 BuildRequires:  libcap-devel
 BuildRequires:  libcap-ng-devel
 BuildRequires:  libcurl-devel
+BuildRequires:  libjpeg-devel
+BuildRequires:  libpng-devel
 BuildRequires:  libpulse-devel
 BuildRequires:  ncurses-devel
 BuildRequires:  pciutils-devel
@@ -88,13 +90,10 @@
 %if %{with spice}
 # Spice support requires pixman > 0.17, which does not included in older suse 
versions
 %if 0%{?suse_version} >= 1130
-# Spice support does not currently build with -Werror on 32-bit platforms
-%ifnarch %ix86
 BuildRequires:  libspice-server-devel
 BuildRequires:  spice-protocol-devel
 %endif
 %endif
-%endif
 %if 0%{?suse_version} >= 1220
 BuildRequires:  usbredir-devel >= 0.3.4
 %endif
@@ -107,12 +106,12 @@
 Recommends:     qemu-tools
 Recommends:     virt-utils
 Summary:        Kernel-based Virtual Machine
-License:        BSD-3-Clause ; GPL-2.0 ; GPL-2.0+ ; LGPL-2.1+ ; MIT
+License:        BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
 Group:          System/Kernel
 Url:            http://www.linux-kvm.org
 Version:        %{package_true_version}
 Release:        0
-Source0:        qemu-%{name}-%{package_true_version}.tar.bz2
+Source0:        qemu-%{package_true_version}.tar.bz2
 Source1:        60-kvm.rules
 Source2:        qemu-ifup
 Source3:        kvm-supported.txt
@@ -130,7 +129,6 @@
 
 # seabios patches
 Patch20:        seabios-sanitize-version.patch
-Patch21:        seabios-Makefile-fix-iasl-option-detection.patch
 
 # vgabios patches
 Patch40:        vgabios-bcc-paths.patch
@@ -141,17 +139,19 @@
 Patch61:        kvm-qemu-default-memsize.patch
 Patch62:        kvm-qemu-madvise-DONTFORK-for-tight-memory-migration.patch
 Patch63:        kvm-qemu-avoid-deprecated-gnutls-types.patch
+Patch64:        kvm-qemu-provide-__u64-for-broken-sys-capability-h.patch
+Patch65:        kvm-glibc217.patch
+Patch66:        kvm-qemu-avoid-redunant-declaration-error.patch
+Patch67:        kvm-qemu-enable-kvm-acceleration.patch
+Patch68:        kvm-qemu-make-rtl8139-default-nic.patch
 
 # Post-release upstream patches
 Patch100:       kvm-qemu-preXX-dictzip1.patch
 Patch101:       kvm-qemu-preXX-dictzip2.patch
-Patch102:       kvm-qemu-preXX-report-default-mac-used.patch
-Patch103:       kvm-qemu-preXX-console.patch
-Patch104:       kvm-qemu-madvise-hugepages.patch
-Patch105:       kvm-qemu-preXX-dictzip3.patch
-Patch106:       kvm-qemu-preXX-use--libexecdir-instead-of-ignoring.patch
-Patch107:       
kvm-qemu-preXX-configure-avoid-compiler-warning-in-pipe2-detection.patch
-Patch108:       
kvm-qemu-preXX-console-bounds-check-whenever-changing-the-cursor-du.patch
+Patch102:       kvm-qemu-preXX-dictzip3.patch
+Patch103:       kvm-qemu-preXX-report-default-mac-used.patch
+Patch104:       kvm-qemu-preXX-console.patch
+Patch105:       kvm-qemu-preXX-serial-retry-revert.patch
 
 Patch200:       kvm-studio-slirp-nooutgoing.patch
 Patch201:       kvm-studio-vnc.patch
@@ -162,13 +162,8 @@
 Patch501:       IA64-compile-fix-suse.patch
 
 # for S390
-Patch700:       S390-no-tpr.patch
-Patch701:       S390-qemu-early-printk.patch
-Patch702:       S390-0003-Make-char-muxer-more-robust-wrt-small-FIFOs.patch
-Patch703:       S390-hp-0001--S390-Add-hotplug-support.patch
-Patch704:       S390-hp-0002-Compile-device-hotplug-on-all-targets.patch
-Patch705:       S390-hp-0003-Add-generic-drive-hotplugging.patch
-Patch706:       S390-hp-0004-Expose-drive_add-on-all-architectures.patch
+Patch700:       S390-qemu-early-printk.patch
+Patch701:       S390-0003-Make-char-muxer-more-robust-wrt-small-FIFOs.patch
 
 # For upstream patches:
 
@@ -216,7 +211,8 @@
 %patch01 -p1
 %patch02 -p1
 %endif
-%setup -q -n qemu-%{name}-%{package_true_version} -a 6 -a 9 -a 10
+%setup -q -n qemu-%{package_true_version} -a 6 -a 9 -a 10
+#BFR%setup -q -n qemu-%{name}-%{package_true_version} -a 6 -a 9 -a 10
 %if %{build_fw_from_source}
 #ensure that we only end up with the ones we built
 for i in %firmware_files
@@ -225,17 +221,22 @@
 done
 # seabios patches
 %patch20 -p1
-%patch21 -p1
 
 # vgabios patches
 %patch40 -p1
 %endif
 
+# convert qemu into qemu-kvm patches
 # qemu-kvm patches
 %patch60 -p1
 %patch61 -p1
 %patch62 -p1
 %patch63 -p1
+%patch64 -p1
+%patch65 -p1
+%patch66 -p1
+%patch67 -p1
+%patch68 -p1
 
 # Post-release patches
 %patch100 -p1
@@ -244,9 +245,6 @@
 %patch103 -p1
 %patch104 -p1
 %patch105 -p1
-%patch106 -p1
-%patch107 -p1
-%patch108 -p1
 
 # Studio addons
 %patch200 -p1
@@ -258,15 +256,8 @@
 %patch501 -p1
 %endif
 # S390 support
-%ifarch s390x
 %patch700 -p1
 %patch701 -p1
-%patch702 -p1
-%patch703 -p1
-%patch704 -p1
-%patch705 -p1
-%patch706 -p1
-%endif
 
 cp %{SOURCE3} .
 
@@ -279,9 +270,11 @@
         --sysconfdir=%{_sysconfdir} \
         --libexecdir=%{_libexecdir} \
         --with-confsuffix=/qemu-kvm \
+        --with-pkgversion="kvm-%{version}-%{release}" \
         --extra-cflags="%{optflags}" \
         --disable-debug-tcg \
         --disable-sparse \
+        --disable-strip \
         --enable-werror \
         --enable-sdl \
 %if 0%{?suse_version} >= 1100
@@ -302,8 +295,8 @@
         --disable-xen \
         --enable-vnc-tls \
         --disable-vnc-sasl \
-        --disable-vnc-jpeg \
-        --disable-vnc-png \
+        --enable-vnc-jpeg \
+        --enable-vnc-png \
         --enable-curses \
         --enable-curl \
         --disable-fdt \
@@ -325,10 +318,8 @@
 %if 0%{?suse_version} >= 1130
         --enable-brlapi \
 %if %{with spice}
-%ifnarch %ix86
         --enable-spice
 %endif
-%endif
 %else
         --disable-brlapi \
         --disable-spice
@@ -355,6 +346,12 @@
 cp roms/vgabios/VGABIOS-lgpl-latest.vmware.bin pc-bios/vgabios-vmware.bin
 cp roms/vgabios/VGABIOS-lgpl-latest.qxl.bin pc-bios/vgabios-qxl.bin
 cd ../%{pxe_rom_id}/src
+# work around bogus aliasing warning in 32 bit v4.3 gcc compiler
+%if 0%{?suse_version} == 1110
+%ifarch %ix86
+make NO_WERROR=1 bin/byteswap_test.o %{?_smp_mflags}
+%endif
+%endif
 make bin/blib.a %{?_smp_mflags}
 make bin/8086100e.rom %{?_smp_mflags}
 make bin/10222000.rom %{?_smp_mflags}
@@ -396,6 +393,8 @@
 %endif
 %ifarch ia64 s390x
 rm .%_datadir/qemu-kvm/bios.bin
+mv %{buildroot}%{_sysconfdir}/qemu-kvm/target-x86_64.conf \
+   %{buildroot}%{_sysconfdir}/qemu-kvm/target-s390x.conf
 %endif
 rm -r .%_mandir/man1/qemu-img.1
 rm -r .%_mandir/man1/virtfs-proxy-helper.1
@@ -427,7 +426,11 @@
 %attr(755,root,kvm) %{_bindir}/kvm_stat
 %{_datadir}/qemu-kvm
 %dir %attr(0755,root,kvm) %{_sysconfdir}/qemu-kvm/
+%ifarch s390x
+%config %attr(644,root,kvm) %{_sysconfdir}/qemu-kvm/target-s390x.conf
+%else
 %config %attr(644,root,kvm) %{_sysconfdir}/qemu-kvm/target-x86_64.conf
+%endif
 %config %{_sysconfdir}/udev/rules.d/60-kvm.rules
 %_mandir/man1/qemu-kvm.1.gz
 

++++++ S390-0003-Make-char-muxer-more-robust-wrt-small-FIFOs.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:39.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:39.000000000 +0100
@@ -25,41 +25,44 @@
  qemu-char.c |   10 ++++++++++
  1 files changed, 10 insertions(+), 0 deletions(-)
 
-diff --git a/qemu-char.c b/qemu-char.c
-index 048da3f..6ad6609 100644
---- a/qemu-char.c
-+++ b/qemu-char.c
-@@ -219,6 +219,7 @@ typedef struct {
+Index: qemu-1.3.0/qemu-char.c
+===================================================================
+--- qemu-1.3.0.orig/qemu-char.c
++++ qemu-1.3.0/qemu-char.c
+@@ -241,6 +241,9 @@ typedef struct {
      IOEventHandler *chr_event[MAX_MUX];
      void *ext_opaque[MAX_MUX];
      CharDriverState *drv;
++#if defined(TARGET_S390X)
 +    QEMUTimer *accept_timer;
++#endif
      int focus;
      int mux_cnt;
      int term_got_escape;
-@@ -380,6 +381,13 @@ static void mux_chr_accept_input(CharDriverState *chr)
+@@ -397,6 +400,15 @@ static void mux_chr_accept_input(CharDri
          d->chr_read[m](d->ext_opaque[m],
                         &d->buffer[m][d->cons[m]++ & MUX_BUFFER_MASK], 1);
      }
 +
++#if defined(TARGET_S390X)
 +    /* We're still not able to sync producer and consumer, so let's wait a bit
 +       and try again by then. */
 +    if (d->prod[m] != d->cons[m]) {
 +        qemu_mod_timer(d->accept_timer, qemu_get_clock_ns(vm_clock)
 +                                        + (int64_t)100000);
 +    }
++#endif
  }
  
  static int mux_chr_can_read(void *opaque)
-@@ -462,6 +470,8 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState 
*drv)
+@@ -479,6 +491,10 @@ static CharDriverState *qemu_chr_open_mu
      chr->opaque = d;
      d->drv = drv;
      d->focus = -1;
++#if defined(TARGET_S390X)
 +    d->accept_timer = qemu_new_timer_ns(vm_clock,
 +                                     (QEMUTimerCB*)mux_chr_accept_input, chr);
++#endif
      chr->chr_write = mux_chr_write;
      chr->chr_update_read_handler = mux_chr_update_read_handler;
      chr->chr_accept_input = mux_chr_accept_input;
--- 
-1.6.0.2
-

++++++ S390-qemu-early-printk.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:39.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:39.000000000 +0100
@@ -16,11 +16,11 @@
  hw/virtio-console.h |    2 ++
  3 files changed, 12 insertions(+), 0 deletions(-)
 
-Index: qemu-kvm-0.14.50/hw/s390-virtio.c
+Index: qemu-1.3.rc0/hw/s390-virtio.c
 ===================================================================
---- qemu-kvm-0.14.50.orig/hw/s390-virtio.c
-+++ qemu-kvm-0.14.50/hw/s390-virtio.c
-@@ -99,6 +99,9 @@ int s390_virtio_hypercall(CPUState *env,
+--- qemu-1.3.rc0.orig/hw/s390-virtio.c
++++ qemu-1.3.rc0/hw/s390-virtio.c
+@@ -90,6 +90,9 @@ int s390_virtio_hypercall(CPUS390XState
              }
          } else {
              /* Early printk */
@@ -30,11 +30,11 @@
          }
          break;
      case KVM_S390_VIRTIO_RESET:
-Index: qemu-kvm-0.14.50/hw/virtio-console.c
+Index: qemu-1.3.rc0/hw/virtio-console.c
 ===================================================================
---- qemu-kvm-0.14.50.orig/hw/virtio-console.c
-+++ qemu-kvm-0.14.50/hw/virtio-console.c
-@@ -19,6 +19,14 @@ typedef struct VirtConsole {
+--- qemu-1.3.rc0.orig/hw/virtio-console.c
++++ qemu-1.3.rc0/hw/virtio-console.c
+@@ -20,6 +20,14 @@ typedef struct VirtConsole {
      CharDriverState *chr;
  } VirtConsole;
  
@@ -44,16 +44,16 @@
 +    VirtIOSerialPort *port = find_port_by_id(vser, 0);
 +    VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port);
 +
-+    qemu_chr_write(vcon->chr, buf, strlen((char*)buf));
++    qemu_chr_fe_write(vcon->chr, buf, strlen((char*)buf));
 +}
  
  /* Callback function that's called when the guest sends us data */
  static ssize_t flush_buf(VirtIOSerialPort *port, const uint8_t *buf, size_t 
len)
-Index: qemu-kvm-0.14.50/hw/virtio-serial.h
+Index: qemu-1.3.rc0/hw/virtio-serial.h
 ===================================================================
---- qemu-kvm-0.14.50.orig/hw/virtio-serial.h
-+++ qemu-kvm-0.14.50/hw/virtio-serial.h
-@@ -204,4 +204,7 @@ size_t virtio_serial_guest_ready(VirtIOS
+--- qemu-1.3.rc0.orig/hw/virtio-serial.h
++++ qemu-1.3.rc0/hw/virtio-serial.h
+@@ -205,4 +205,7 @@ size_t virtio_serial_guest_ready(VirtIOS
   */
  void virtio_serial_throttle_port(VirtIOSerialPort *port, bool throttle);
  
@@ -61,12 +61,12 @@
 +VirtIOSerialPort *find_port_by_id(VirtIOSerial *vser, uint32_t id);
 +
  #endif
-Index: qemu-kvm-0.14.50/hw/virtio-serial-bus.c
+Index: qemu-1.3.rc0/hw/virtio-serial-bus.c
 ===================================================================
---- qemu-kvm-0.14.50.orig/hw/virtio-serial-bus.c
-+++ qemu-kvm-0.14.50/hw/virtio-serial-bus.c
-@@ -51,7 +51,7 @@ struct VirtIOSerial {
-     struct virtio_console_config config;
+--- qemu-1.3.rc0.orig/hw/virtio-serial-bus.c
++++ qemu-1.3.rc0/hw/virtio-serial-bus.c
+@@ -64,7 +64,7 @@ struct VirtIOSerial {
+     } post_load;
  };
  
 -static VirtIOSerialPort *find_port_by_id(VirtIOSerial *vser, uint32_t id)

++++++ ipxe-git-a05871d.tar.bz2 -> ipxe-717279a.tar.bz2 ++++++
++++ 10417 lines of diff (skipped)

++++++ kvm-glibc217.patch ++++++
Index: qemu-kvm-1.2.0/fsdev/virtfs-proxy-helper.c
===================================================================
--- qemu-kvm-1.2.0.orig/fsdev/virtfs-proxy-helper.c
+++ qemu-kvm-1.2.0/fsdev/virtfs-proxy-helper.c
@@ -294,8 +294,10 @@ static int setfsugid(int uid, int gid)
         CAP_DAC_OVERRIDE,
     };
 
-    setfsgid(gid);
-    setfsuid(uid);
+    if (setfsgid(gid) < 0)
+       return -1;
+    if (setfsuid(uid) < 0)
+       return -1;
 
     if (uid != 0 || gid != 0) {
         return do_cap_set(cap_list, ARRAY_SIZE(cap_list), 0);
++++++ kvm-qemu-avoid-redunant-declaration-error.patch ++++++
Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/configure
===================================================================
--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/configure
+++ qemu-kvm-1.3.prerc0.0.git.f5022a1/configure
@@ -267,7 +267,7 @@ sdl_config="${SDL_CONFIG-${cross_prefix}
 # default flags for all hosts
 QEMU_CFLAGS="-fno-strict-aliasing $QEMU_CFLAGS"
 QEMU_CFLAGS="-Wall -Wundef -Wwrite-strings -Wmissing-prototypes $QEMU_CFLAGS"
-QEMU_CFLAGS="-Wstrict-prototypes -Wredundant-decls $QEMU_CFLAGS"
+QEMU_CFLAGS="-Wstrict-prototypes $QEMU_CFLAGS"
 QEMU_CFLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 
$QEMU_CFLAGS"
 QEMU_INCLUDES="-I. -I\$(SRC_PATH) -I\$(SRC_PATH)/fpu"
 if test "$debug_info" = "yes"; then
++++++ kvm-qemu-enable-kvm-acceleration.patch ++++++
Index: qemu-1.3.0/sysconfigs/target/target-x86_64.conf
===================================================================
--- /dev/null
+++ qemu-1.3.0/sysconfigs/target/target-x86_64.conf
@@ -0,0 +1,2 @@
+[machine]
+   accel = "kvm"
++++++ kvm-qemu-madvise-DONTFORK-for-tight-memory-migration.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:41.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:41.000000000 +0100
@@ -1,20 +1,12 @@
-Index: qemu-kvm-1.2.rc0/exec.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/exec.c
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/exec.c
-+++ qemu-kvm-1.2.rc0/exec.c
-@@ -2527,6 +2527,7 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_a
-             if (!new_block->host) {
-                 new_block->host = qemu_vmalloc(size);
-                 qemu_madvise(new_block->host, size, QEMU_MADV_MERGEABLE);
-+                qemu_madvise(new_block->host, size, QEMU_MADV_DONTFORK);
-             }
- #else
-             fprintf(stderr, "-mem-path option unsupported\n");
-@@ -2542,6 +2543,7 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_a
-                 new_block->host = qemu_vmalloc(size);
-             }
-             qemu_madvise(new_block->host, size, QEMU_MADV_MERGEABLE);
-+            qemu_madvise(new_block->host, size, QEMU_MADV_DONTFORK);
-         }
-     }
-     new_block->length = size;
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/exec.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/exec.c
+@@ -2590,6 +2590,7 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_a
+ 
+     qemu_ram_setup_dump(new_block->host, size);
+     qemu_madvise(new_block->host, size, QEMU_MADV_HUGEPAGE);
++    qemu_madvise(new_block->host, size, QEMU_MADV_DONTFORK);
+ 
+     if (kvm_enabled())
+         kvm_setup_guest_memory(new_block->host, size);

++++++ kvm-qemu-make-rtl8139-default-nic.patch ++++++
We need this, but perhaps we can drop in SLES 12.
Index: qemu-1.3.rc1/hw/pc.c
===================================================================
--- qemu-1.3.rc1.orig/hw/pc.c
+++ qemu-1.3.rc1/hw/pc.c
@@ -1068,7 +1068,7 @@ void pc_nic_init(ISABus *isa_bus, PCIBus
         if (!pci_bus || (nd->model && strcmp(nd->model, "ne2k_isa") == 0)) {
             pc_init_ne2k_isa(isa_bus, nd);
         } else {
-            pci_nic_init_nofail(nd, "e1000", NULL);
+            pci_nic_init_nofail(nd, "rtl8139", NULL);
         }
     }
 }
++++++ kvm-qemu-preXX-console.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:41.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:41.000000000 +0100
@@ -13,21 +13,18 @@
 Signed-off-by: Alexander Graf <[email protected]>
 ---
  console.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/console.c b/console.c
-index 871c1d4..5e8e35d 100644
---- a/console.c
-+++ b/console.c
-@@ -905,7 +905,7 @@ static void console_putchar(TextConsole *s, int ch)
-             }
+Index: qemu-kvm-1.2.0/console.c
+===================================================================
+--- qemu-kvm-1.2.0.orig/console.c
++++ qemu-kvm-1.2.0/console.c
+@@ -943,7 +943,7 @@ static void console_putchar(TextConsole
          } else {
-             s->nb_esc_params++;
+             if (s->nb_esc_params < MAX_ESC_PARAMS)
+                 s->nb_esc_params++;
 -            if (ch == ';')
 +            if (ch == ';' || ch == '?')
                  break;
  #ifdef DEBUG_CONSOLE
              fprintf(stderr, "escape sequence CSI%d;%d%c, %d parameters\n",
--- 
-1.6.0.2
-

++++++ kvm-qemu-preXX-dictzip1.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:41.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:41.000000000 +0100
@@ -24,10 +24,10 @@
  2 files changed, 502 insertions(+), 1 deletions(-)
  create mode 100644 block/dictzip.c
 
-Index: qemu-kvm-1.2.rc0/block/dictzip.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/block/dictzip.c
 ===================================================================
 --- /dev/null
-+++ qemu-kvm-1.2.rc0/block/dictzip.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/block/dictzip.c
 @@ -0,0 +1,566 @@
 +/*
 + * DictZip Block driver for dictzip enabled gzip files
@@ -436,7 +436,7 @@
 +{
 +}
 +
-+static AIOPool dictzip_aio_pool = {
++static const AIOCBInfo dictzip_aiocb_info = {
 +    .aiocb_size         = sizeof(DictZipAIOCB),
 +    .cancel             = dictzip_aio_cancel,
 +};
@@ -462,7 +462,7 @@
 +    int     first_offset;
 +    int     i;
 +
-+    acb = qemu_aio_get(&dictzip_aio_pool, bs, cb, opaque);
++    acb = qemu_aio_get(&dictzip_aiocb_info, bs, cb, opaque);
 +    if (!acb)
 +        return NULL;
 +
@@ -595,15 +595,12 @@
 +}
 +
 +block_init(dictzip_block_init);
-Index: qemu-kvm-1.2.rc0/block/Makefile.objs
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/block/Makefile.objs
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/block/Makefile.objs
-+++ qemu-kvm-1.2.rc0/block/Makefile.objs
-@@ -4,6 +4,7 @@ block-obj-y += qed.o qed-gencb.o qed-l2-
- block-obj-y += qed-check.o
- block-obj-y += parallels.o nbd.o blkdebug.o sheepdog.o blkverify.o
- block-obj-y += stream.o
-+block-obj-y += dictzip.o
- block-obj-$(CONFIG_WIN32) += raw-win32.o
- block-obj-$(CONFIG_POSIX) += raw-posix.o
- block-obj-$(CONFIG_LIBISCSI) += iscsi.o
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/block/Makefile.objs
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/block/Makefile.objs
+@@ -18,3 +18,4 @@ endif
+ common-obj-y += stream.o
+ common-obj-y += commit.o
+ common-obj-y += mirror.o
++common-obj-y += dictzip.o

++++++ kvm-qemu-preXX-dictzip2.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:41.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:41.000000000 +0100
@@ -25,10 +25,10 @@
  2 files changed, 334 insertions(+), 1 deletions(-)
  create mode 100644 block/tar.c
 
-Index: qemu-kvm-1.2.rc0/block/tar.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/block/tar.c
 ===================================================================
 --- /dev/null
-+++ qemu-kvm-1.2.rc0/block/tar.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/block/tar.c
 @@ -0,0 +1,356 @@
 +/*
 + * Tar block driver
@@ -292,7 +292,7 @@
 +{
 +}
 +
-+static AIOPool tar_aio_pool = {
++static AIOCBInfo tar_aiocb_info = {
 +    .aiocb_size         = sizeof(TarAIOCB),
 +    .cancel             = tar_aio_cancel,
 +};
@@ -322,7 +322,7 @@
 +            /* all our sectors are sparse */
 +            char *buf = g_malloc0(nb_sectors * SECTOR_SIZE);
 +
-+            acb = qemu_aio_get(&tar_aio_pool, bs, cb, opaque);
++            acb = qemu_aio_get(&tar_aiocb_info, bs, cb, opaque);
 +            qemu_iovec_from_buf(qiov, 0, buf, nb_sectors * SECTOR_SIZE);
 +            g_free(buf);
 +            acb->bh = qemu_bh_new(tar_sparse_cb, acb);
@@ -343,7 +343,7 @@
 +            }
 +
 +            qemu_iovec_from_buf(qiov, 0, buf, nb_sectors * SECTOR_SIZE);
-+            acb = qemu_aio_get(&tar_aio_pool, bs, cb, opaque);
++            acb = qemu_aio_get(&tar_aiocb_info, bs, cb, opaque);
 +            acb->bh = qemu_bh_new(tar_sparse_cb, acb);
 +            qemu_bh_schedule(acb->bh);
 +
@@ -386,16 +386,12 @@
 +}
 +
 +block_init(tar_block_init);
-Index: qemu-kvm-1.2.rc0/block/Makefile.objs
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/block/Makefile.objs
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/block/Makefile.objs
-+++ qemu-kvm-1.2.rc0/block/Makefile.objs
-@@ -4,7 +4,7 @@ block-obj-y += qed.o qed-gencb.o qed-l2-
- block-obj-y += qed-check.o
- block-obj-y += parallels.o nbd.o blkdebug.o sheepdog.o blkverify.o
- block-obj-y += stream.o
--block-obj-y += dictzip.o
-+block-obj-y += dictzip.o tar.o
- block-obj-$(CONFIG_WIN32) += raw-win32.o
- block-obj-$(CONFIG_POSIX) += raw-posix.o
- block-obj-$(CONFIG_LIBISCSI) += iscsi.o
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/block/Makefile.objs
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/block/Makefile.objs
+@@ -19,3 +19,4 @@ common-obj-y += stream.o
+ common-obj-y += commit.o
+ common-obj-y += mirror.o
+ common-obj-y += dictzip.o
++common-obj-y += tar.o

++++++ kvm-qemu-preXX-serial-retry-revert.patch ++++++
>From 364b4a642c3a3d30c882c6e59b13b1bf74bcb7b2 Mon Sep 17 00:00:00 2001
From: Michael Tokarev <[email protected]>
Date: Wed, 19 Sep 2012 12:08:31 +0400
Subject: [PATCH] Revert "serial: fix retry logic"

This reverts commit 67c5322d7000fd105a926eec44bc1765b7d70bdd:

    I'm not sure if the retry logic has ever worked when not using FIFO mode.  I
    found this while writing a test case although code inspection confirms it is
    definitely broken.

    The TSR retry logic will never actually happen because it is guarded by an
    'if (s->tsr_rety > 0)' but this is the only place that can ever make the
    variable greater than zero.  That effectively makes the retry logic an 'if 
(0)

    I believe this is a typo and the intention was >= 0.  Once this is fixed 
thoug
    I see double transmits with my test case.  This is because in the non FIFO
    case, serial_xmit may get invoked while LSR.THRE is still high because the
    character was processed but the retransmit timer was still active.

    We can handle this by simply checking for LSR.THRE and returning early.  
It's
    possible that the FIFO paths also need some attention.

    Cc: Stefano Stabellini <[email protected]>
    Signed-off-by: Anthony Liguori <[email protected]>

Even if the previous logic was never worked, new logic breaks stuff -
namely,

 qemu -enable-kvm -nographic -kernel /boot/vmlinuz-$(uname -r) -append 
console=ttyS0 -serial pty

the above command will cause the virtual machine to stuck at startup
using 100% CPU till one connects to the pty and sends any char to it.

Note this is rather typical invocation for various headless virtual
machines by libvirt.

So revert this change for now, till a better solution will be found.

Signed-off-by: Michael Tokarev <[email protected]>
Tested-by: Bernhard M. Wiedemann <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
---
 hw/serial.c |    4 +---
 1 Datei geändert, 1 Zeile hinzugefügt(+), 3 Zeilen entfernt(-)

diff --git a/hw/serial.c b/hw/serial.c
index 60283ea..f59ff53 100644
--- a/hw/serial.c
+++ b/hw/serial.c
@@ -266,8 +266,6 @@ static void serial_xmit(void *opaque)
             s->tsr = fifo_get(s,XMIT_FIFO);
             if (!s->xmit_fifo.count)
                 s->lsr |= UART_LSR_THRE;
-        } else if ((s->lsr & UART_LSR_THRE)) {
-            return;
         } else {
             s->tsr = s->thr;
             s->lsr |= UART_LSR_THRE;
@@ -279,7 +277,7 @@ static void serial_xmit(void *opaque)
         /* in loopback mode, say that we just received a char */
         serial_receive1(s, &s->tsr, 1);
     } else if (qemu_chr_fe_write(s->chr, &s->tsr, 1) != 1) {
-        if ((s->tsr_retry >= 0) && (s->tsr_retry <= MAX_XMIT_RETRY)) {
+        if ((s->tsr_retry > 0) && (s->tsr_retry <= MAX_XMIT_RETRY)) {
             s->tsr_retry++;
             qemu_mod_timer(s->transmit_timer,  new_xmit_ts + 
s->char_transmit_time);
             return;
-- 
1.7.10.4

++++++ kvm-qemu-provide-__u64-for-broken-sys-capability-h.patch ++++++
Index: qemu-kvm-1.2.0/fsdev/virtfs-proxy-helper.c
===================================================================
--- qemu-kvm-1.2.0.orig/fsdev/virtfs-proxy-helper.c
+++ qemu-kvm-1.2.0/fsdev/virtfs-proxy-helper.c
@@ -9,6 +9,10 @@
  * the COPYING file in the top-level directory.
  */
 
+/* work around a broken sys/capability.h */
+#if defined(__i386__)
+typedef unsigned long long __u64;
+#endif
 #include <sys/resource.h>
 #include <getopt.h>
 #include <syslog.h>
++++++ kvm-studio-slirp-nooutgoing.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:41.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:41.000000000 +0100
@@ -1,16 +1,16 @@
-Index: qemu-kvm-1.2.rc0/vl.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/vl.c
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/vl.c
-+++ qemu-kvm-1.2.rc0/vl.c
-@@ -210,6 +210,7 @@ const char *vnc_display;
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/vl.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/vl.c
+@@ -214,6 +214,7 @@ const char *vnc_display;
  int acpi_enabled = 1;
  int no_hpet = 0;
  int fd_bootchk = 1;
 +int slirp_nooutgoing = 0;
- int no_reboot = 0;
+ static int no_reboot;
  int no_shutdown = 0;
  int cursor_hide = 1;
-@@ -2745,6 +2746,14 @@ int main(int argc, char **argv, char **e
+@@ -2930,6 +2931,14 @@ int main(int argc, char **argv, char **e
              case QEMU_OPTION_singlestep:
                  singlestep = 1;
                  break;
@@ -25,10 +25,10 @@
              case QEMU_OPTION_S:
                  autostart = 0;
                  break;
-Index: qemu-kvm-1.2.rc0/slirp/tcp_subr.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/slirp/tcp_subr.c
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/slirp/tcp_subr.c
-+++ qemu-kvm-1.2.rc0/slirp/tcp_subr.c
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/slirp/tcp_subr.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/slirp/tcp_subr.c
 @@ -324,6 +324,9 @@ tcp_sockclosed(struct tcpcb *tp)
   * nonblocking.  Connect returns after the SYN is sent, and does
   * not wait for ACK+SYN.
@@ -73,10 +73,10 @@
        /* Translate connections from localhost to the real hostname */
          if (so->so_faddr.s_addr == 0 ||
              (so->so_faddr.s_addr & loopback_mask) ==
-Index: qemu-kvm-1.2.rc0/slirp/socket.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/slirp/socket.c
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/slirp/socket.c
-+++ qemu-kvm-1.2.rc0/slirp/socket.c
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/slirp/socket.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/slirp/socket.c
 @@ -531,6 +531,8 @@ sorecvfrom(struct socket *so)
        } /* if ping packet */
  }
@@ -99,11 +99,11 @@
        /* Don't care what port we get */
        ret = sendto(so->s, m->m_data, m->m_len, 0,
                     (struct sockaddr *)&addr, sizeof (struct sockaddr));
-Index: qemu-kvm-1.2.rc0/qemu-options.hx
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/qemu-options.hx
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/qemu-options.hx
-+++ qemu-kvm-1.2.rc0/qemu-options.hx
-@@ -2316,6 +2316,16 @@ Store the QEMU process PID in @var{file}
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/qemu-options.hx
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/qemu-options.hx
+@@ -2388,6 +2388,16 @@ Store the QEMU process PID in @var{file}
  from a script.
  ETEXI
  

++++++ kvm-studio-vnc.patch ++++++
--- /var/tmp/diff_new_pack.39AHzx/_old  2012-12-12 13:27:41.000000000 +0100
+++ /var/tmp/diff_new_pack.39AHzx/_new  2012-12-12 13:27:41.000000000 +0100
@@ -1,7 +1,7 @@
-Index: qemu-kvm-1.2.rc0/ui/vnc.c
+Index: qemu-kvm-1.3.prerc0.0.git.f5022a1/ui/vnc.c
 ===================================================================
---- qemu-kvm-1.2.rc0.orig/ui/vnc.c
-+++ qemu-kvm-1.2.rc0/ui/vnc.c
+--- qemu-kvm-1.3.prerc0.0.git.f5022a1.orig/ui/vnc.c
++++ qemu-kvm-1.3.prerc0.0.git.f5022a1/ui/vnc.c
 @@ -45,6 +45,7 @@ static const struct timeval VNC_REFRESH_
  
  static VncDisplay *vnc_display; /* needed for info vnc */
@@ -10,7 +10,7 @@
  
  static int vnc_cursor_define(VncState *vs);
  static void vnc_release_modifiers(VncState *vs);
-@@ -1018,6 +1019,7 @@ static void vnc_disconnect_start(VncStat
+@@ -1019,6 +1020,7 @@ static void vnc_disconnect_start(VncStat
  static void vnc_disconnect_finish(VncState *vs)
  {
      int i;
@@ -18,7 +18,7 @@
  
      vnc_jobs_join(vs); /* Wait encoding jobs */
  
-@@ -1063,6 +1065,13 @@ static void vnc_disconnect_finish(VncSta
+@@ -1064,6 +1066,13 @@ static void vnc_disconnect_finish(VncSta
      }
      g_free(vs->lossy_rect);
      g_free(vs);
@@ -32,24 +32,24 @@
  }
  
  int vnc_client_io_error(VncState *vs, int ret, int last_errno)
-@@ -2844,6 +2853,39 @@ char *vnc_display_local_addr(DisplayStat
+@@ -2861,6 +2870,39 @@ char *vnc_display_local_addr(DisplayStat
      return vnc_socket_local_addr("%s:%s", vs->lsock);
  }
  
-+static void read_file_password(DisplayState *ds, char *filename)
++static void read_file_password(DisplayState *ds, char *filename, Error **errp)
 +{
 +    FILE *pfile = NULL;
 +    char *passwd = NULL;
 +    int start = 0, length = 0, rc = 0;
 +
 +    if(strlen(filename) == 0) {
-+      printf("No file supplied\n");
++      error_setg(errp, "No file supplied");
 +      return;
 +    }
 +
 +    pfile = fopen(filename, "r");
 +    if(pfile == NULL) {
-+      printf("Could not read from %s\n", filename);
++      error_setg(errp, "Could not read from %s", filename);
 +      return;
 +    }
 +
@@ -58,7 +58,7 @@
 +    length = ftell(pfile);
 +    fseek(pfile, 0L, start);
 +
-+    passwd = malloc(length+1);
++    passwd = g_malloc(length+1);
 +    rc = fread(passwd, 1, length, pfile);
 +    fclose(pfile);
 +
@@ -66,13 +66,13 @@
 +      vnc_display_password(ds, passwd);
 +    }
 +
-+    free(passwd);
++    g_free(passwd);
 +}
 +
- int vnc_display_open(DisplayState *ds, const char *display)
+ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
  {
      VncDisplay *vs = ds ? (VncDisplay *)ds->opaque : vnc_display;
-@@ -2876,6 +2918,9 @@ int vnc_display_open(DisplayState *ds, c
+@@ -2894,6 +2936,9 @@ void vnc_display_open(DisplayState *ds,
      while ((options = strchr(options, ','))) {
          options++;
          if (strncmp(options, "password", 8) == 0) {
@@ -80,10 +80,10 @@
 +            start = strchr(options, '=');
 +            end = strchr(options, ',');
              if (fips_get_state()) {
-                 fprintf(stderr,
-                         "VNC password auth disabled due to FIPS mode, "
-@@ -2886,6 +2931,32 @@ int vnc_display_open(DisplayState *ds, c
-                 return -1;
+                 error_setg(errp,
+                            "VNC password auth disabled due to FIPS mode, "
+@@ -2902,6 +2947,33 @@ void vnc_display_open(DisplayState *ds,
+                 goto fail;
              }
              password = 1; /* Require password auth */
 +            if (start && (!end || (start < end))) {
@@ -93,12 +93,12 @@
 +                text[len] = '\0';
 +                
 +                if (strncmp(options, "password-file=", 14) == 0) {
-+                    read_file_password(ds, text);
++                    read_file_password(ds, text, errp);
 +                } else {
 +                    vnc_display_password(ds, text);
 +                } 
 +            
-+                free(text);
++                g_free(text);
 +            }
 +        } else if (strncmp(options, "allowed-connections=", 20) == 0) {
 +            char *start, *end;
@@ -111,6 +111,7 @@
 +                text[len] = '\0';
 +                VNC_DEBUG("Maximum number of disconnects: %s\n", text);
 +                allowed_connections = atoi(text);
++                g_free(text);
 +            }
          } else if (strncmp(options, "reverse", 7) == 0) {
              reverse = 1;

++++++ qemu-kvm-1.2.rc1.tar.bz2 -> qemu-1.3.0.tar.bz2 ++++++
++++ 188372 lines of diff (skipped)

++++++ seabios-git-7a39e72.tar.bz2 -> seabios-8b73b83.tar.bz2 ++++++
++++ 2775 lines of diff (skipped)


-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to