--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please consider unblocking package qemu.
The current release in sid fixes one serious bug (#772127) which has been
introduced during jessie development and made more serious by recent changes
in qemu packaging. Basically, many qemu-system emulators didn't work due
to missing vgabios (part of seabios) and pxe boot roms (ipxe-qemu package).
The fix includes re-working a (debian-specific) patch which introduces a
build-time search PATH instead of a single directory as used by qemu (since
upstream qemu source includes firmware blobs from various projects in a
single directory, this is enough for upstream qemu; but in Debian we have
these blobs in different packages), and also adds Recommends entries to
several qemu-system packages.
I didn't want to use Depends because at least in theory, these systems
can function without the firmware, and also because adding extra Depends
at this stage is a bit risky.
Meanwhile, unfortunately, I mistakenly uploaded a new upstream version of
qemu (2.2), which aimed at experimental, to unstable. So I had to re-
upload 2.1 version again, bumping the epoch number, to cancel 2.2 upload.
So in addition to fixing that single bug, there's also epoch number
increment.
There's no other changes.
Debdiff between version in jessie/testing and current sid is below.
unblock qemu/2.1+dfsg-11
Thanks,
/mjt
diff -Nru qemu-2.1+dfsg/debian/changelog qemu-2.1+dfsg/debian/changelog
--- qemu-2.1+dfsg/debian/changelog 2014-12-04 16:57:09.000000000 +0300
+++ qemu-2.1+dfsg/debian/changelog 2014-12-10 00:53:52.000000000 +0300
@@ -1,3 +1,26 @@
+qemu (1:2.1+dfsg-11) unstable; urgency=medium
+
+ * bump epoch and reupload to cancel 2.2+dfsg-1exp upload
+ mistakenly done to unstable. No other changes.
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Wed, 10 Dec 2014 00:52:28 +0300
+
+qemu (2.1+dfsg-10) unstable; urgency=medium
+
+ * make (debian-specific) x86 data path (with seabios and ipxe
+ in it) non-x86-specific, since other arches use firmware
+ files too (Closes: #772127)
+ * add seabios to Recommends to qemu-system-misc, qemu-system-mips,
+ qemu-system-ppc and qemu-system-sparc packages, because these
+ packages contains emulators using vgabios which is part of
+ seabios package (#772127).
+ * add ipxe-qemu to Recommends to qemu-system-misc, qemu-system-arm,
+ qemu-system-mips, qemu-system-ppc, qemu-system-sparc packages,
+ because these packages contains emulators using network boot
+ roms (#772127), in a similar way.
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Tue, 09 Dec 2014 13:47:36 +0300
+
qemu (2.1+dfsg-9) unstable; urgency=high
* apply upstream patches for CVE-2014-8106
diff -Nru qemu-2.1+dfsg/debian/control qemu-2.1+dfsg/debian/control
--- qemu-2.1+dfsg/debian/control 2014-12-04 16:53:29.000000000 +0300
+++ qemu-2.1+dfsg/debian/control 2014-12-10 00:54:52.000000000 +0300
@@ -190,7 +190,10 @@
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc powerpcspe ppc64 ppc64el s390x sparc sparc64 x32
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# alpha uses vgabios
+# alpha m68k sh4 uses bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:misc}
Breaks: qemu-system (<< 1.3.0+dfsg-5)
@@ -215,7 +218,9 @@
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc powerpcspe ppc64 ppc64el s390x sparc sparc64 x32
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# aarch64 arm uses bootroms
+ ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:arm}
Breaks: qemu-system (<< 1.3.0+dfsg-5),
@@ -237,7 +242,9 @@
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc powerpcspe ppc64 ppc64el s390x sparc sparc64 x32
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# all mips targets uses vgabios and bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:mips}
Breaks: qemu-system (<< 1.3.0+dfsg-5)
@@ -263,7 +270,9 @@
# ubuntu can't Depend on openbios-ppc and openhackware as they're in universe
openbios-ppc (>= 1.1+svn1229), openhackware
Suggests: samba, vde2,
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# ppc targets use vgabios-stdvga and bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Provides: ${sysprovides:ppc}
Breaks: qemu-system (<< 1.3.0+dfsg-5),
Replaces: qemu-system (<< 1.3.0+dfsg-5),
@@ -286,7 +295,9 @@
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~),
# ubuntu/openbios-sparc is in universe
openbios-sparc (>= 1.1+svn1229)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# sparc64 uses vgabios-stdvga and bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:sparc}
Breaks:
diff -Nru qemu-2.1+dfsg/debian/control-in qemu-2.1+dfsg/debian/control-in
--- qemu-2.1+dfsg/debian/control-in 2014-12-04 16:53:22.000000000 +0300
+++ qemu-2.1+dfsg/debian/control-in 2014-12-09 13:56:42.000000000 +0300
@@ -200,7 +200,10 @@
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc powerpcspe ppc64 ppc64el s390x sparc sparc64 x32
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# alpha uses vgabios
+# alpha m68k sh4 uses bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:misc}
Breaks: qemu-system (<< 1.3.0+dfsg-5)
@@ -225,7 +228,9 @@
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc powerpcspe ppc64 ppc64el s390x sparc sparc64 x32
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# aarch64 arm uses bootroms
+ ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:arm}
Breaks: qemu-system (<< 1.3.0+dfsg-5),
@@ -255,7 +260,9 @@
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc powerpcspe ppc64 ppc64el s390x sparc sparc64 x32
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# all mips targets uses vgabios and bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:mips}
Breaks: qemu-system (<< 1.3.0+dfsg-5)
@@ -282,7 +289,9 @@
:debian: openbios-ppc (>= 1.1+svn1229), openhackware
Suggests: samba, vde2,
:ubuntu: openbios-ppc (>= 1.1+svn1229), openhackware
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# ppc targets use vgabios-stdvga and bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Provides: ${sysprovides:ppc}
Breaks: qemu-system (<< 1.3.0+dfsg-5),
:ubuntu: qemu-common (<< 1.3.0+dfsg-5),
@@ -311,7 +320,9 @@
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (>> 2.0.0+dfsg-7~),
# ubuntu/openbios-sparc is in universe
:debian: openbios-sparc (>= 1.1+svn1229)
-Recommends: qemu-utils
+Recommends: qemu-utils,
+# sparc64 uses vgabios-stdvga and bootroms
+ seabios, ipxe-qemu (>= 1.0.0+git-20131111.c3d1e78-1~)
Suggests: samba, vde2
Provides: ${sysprovides:sparc}
Breaks:
diff -Nru qemu-2.1+dfsg/debian/patches/series qemu-2.1+dfsg/debian/patches/series
--- qemu-2.1+dfsg/debian/patches/series 2014-12-04 16:53:22.000000000 +0300
+++ qemu-2.1+dfsg/debian/patches/series 2014-12-10 00:52:25.000000000 +0300
@@ -3,7 +3,7 @@
02_kfreebsd.patch
use-fixed-data-path.patch
-use-arch-data-path.patch
+use-data-path.patch
mjt-set-oem-in-rsdt-like-slic.diff
imx_timer_TIMER_MAX_clash.diff
9p-readdir.patch
diff -Nru qemu-2.1+dfsg/debian/patches/use-arch-data-path.patch qemu-2.1+dfsg/debian/patches/use-arch-data-path.patch
--- qemu-2.1+dfsg/debian/patches/use-arch-data-path.patch 2014-12-04 16:53:22.000000000 +0300
+++ qemu-2.1+dfsg/debian/patches/use-arch-data-path.patch 1970-01-01 03:00:00.000000000 +0300
@@ -1,64 +0,0 @@
-From: Michael Tokarev <mjt@tls.msk.ru>
-Date: Sun, 24 Nov 2013 00:56:47 +0400
-Subject: use (arch-specific) data path, not just a single directory
-Forwarded: no
-
-Upstream qemu builds all firmware/binary files and keeps them
-in one data directory. Debian uses different packages with
-those data files. In the past, we used to create symlinks from
-qemu data directory to files in other packages.
-
-Instead of using symlinks, this patch allows to specify list
-of directories to look at, at build time (runtime already
-recognizes -L option).
-
-This allows us to go without symlinks, and to make some other
-packages optional (f.e. vga roms are provided by both vgabios
-package and seabios package, either of them should work).
-
-This patch is debian-specific.
-
---- a/arch_init.c
-+++ b/arch_init.c
-@@ -71,6 +71,13 @@ int graphic_height = 600;
- int graphic_depth = 32;
- #endif
-
-+/* list of (arch-specific) directories to search for data files */
-+char qemu_datapath[] =
-+ CONFIG_QEMU_DATADIR
-+#if (defined(TARGET_I386) || defined(TARGET_X86_64)) && defined(CONFIG_QEMU_X86_DATAPATH)
-+ ":" CONFIG_QEMU_X86_DATAPATH
-+#endif
-+;
-
- #if defined(TARGET_ALPHA)
- #define QEMU_ARCH QEMU_ARCH_ALPHA
---- a/vl.c
-+++ b/vl.c
-@@ -124,7 +124,8 @@ int main(int argc, char **argv)
- #define MAX_VIRTIO_CONSOLES 1
- #define MAX_SCLP_CONSOLES 1
-
--static const char *data_dir[16];
-+extern char qemu_datapath[]; /* arch-specific */
-+static const char *data_dir[32];
- static int data_dir_idx;
- const char *bios_name = NULL;
- enum vga_retrace_method vga_retrace_method = VGA_RETRACE_DUMB;
-@@ -4062,9 +4063,12 @@ int main(int argc, char **argv, char **e
- }
- }
-
-- /* If all else fails use the install path specified when building. */
-- if (data_dir_idx < ARRAY_SIZE(data_dir)) {
-- data_dir[data_dir_idx++] = CONFIG_QEMU_DATADIR;
-+ /* add standard and arch-specific dirs to data path */
-+ for(optarg = strtok(qemu_datapath, ":");
-+ optarg && data_dir_idx < ARRAY_SIZE(data_dir);
-+ optarg = strtok(NULL, ":"))
-+ {
-+ data_dir[data_dir_idx++] = optarg;
- }
-
- smp_parse(qemu_opts_find(qemu_find_opts("smp-opts"), NULL));
diff -Nru qemu-2.1+dfsg/debian/patches/use-data-path.patch qemu-2.1+dfsg/debian/patches/use-data-path.patch
--- qemu-2.1+dfsg/debian/patches/use-data-path.patch 1970-01-01 03:00:00.000000000 +0300
+++ qemu-2.1+dfsg/debian/patches/use-data-path.patch 2014-12-06 15:36:47.000000000 +0300
@@ -0,0 +1,51 @@
+From: Michael Tokarev <mjt@tls.msk.ru>
+Date: Sun, 24 Nov 2013 00:56:47 +0400
+Subject: use data path to search data files, not just a single directory
+Forwarded: no
+
+Upstream qemu builds all firmware/binary files and keeps them
+in one data directory. Debian uses different packages with
+those data files. In the past, we used to create symlinks from
+qemu data directory to files in other packages.
+
+Instead of using symlinks, this patch allows to specify list
+of directories to look at, at build time (runtime already
+recognizes -L option).
+
+This allows us to go without symlinks, and to make some other
+packages optional (f.e. vga roms are provided by both vgabios
+package and seabios package, either of them should work).
+
+This patch is debian-specific.
+
+--- a/vl.c
++++ b/vl.c
+@@ -124,7 +124,11 @@
+ #define MAX_VIRTIO_CONSOLES 1
+ #define MAX_SCLP_CONSOLES 1
+
+-static const char *data_dir[16];
++#ifndef CONFIG_QEMU_DATAPATH
++# define CONFIG_QEMU_DATAPATH CONFIG_QEMU_DATADIR
++#endif
++static char qemu_datapath[] = CONFIG_QEMU_DATAPATH;
++static const char *data_dir[32];
+ static int data_dir_idx;
+ const char *bios_name = NULL;
+ enum vga_retrace_method vga_retrace_method = VGA_RETRACE_DUMB;
+@@ -4046,9 +4050,12 @@
+ }
+ }
+
+- /* If all else fails use the install path specified when building. */
+- if (data_dir_idx < ARRAY_SIZE(data_dir)) {
+- data_dir[data_dir_idx++] = CONFIG_QEMU_DATADIR;
++ /* add standard dirs to data path */
++ for(optarg = strtok(qemu_datapath, ":");
++ optarg && data_dir_idx < ARRAY_SIZE(data_dir);
++ optarg = strtok(NULL, ":"))
++ {
++ data_dir[data_dir_idx++] = optarg;
+ }
+
+ smp_parse(qemu_opts_find(qemu_find_opts("smp-opts"), NULL));
diff -Nru qemu-2.1+dfsg/debian/rules qemu-2.1+dfsg/debian/rules
--- qemu-2.1+dfsg/debian/rules 2014-12-04 16:53:22.000000000 +0300
+++ qemu-2.1+dfsg/debian/rules 2014-12-10 00:52:25.000000000 +0300
@@ -29,12 +29,12 @@
enable_system = $(if $(filter qemu-system,${BUILD_PACKAGES}),enable,disable)
enable_linux_user = $(if $(filter qemu-user,${BUILD_PACKAGES}),enable,disable)
-X86_DATAPATH = /usr/share/seabios:/usr/lib/ipxe/qemu
+DATAPATH = /usr/share/qemu:/usr/share/seabios:/usr/lib/ipxe/qemu
# we add another set of configure options from debian/control
common_configure_opts = \
--with-pkgversion="Debian $(DEB_VERSION)" \
- --extra-cflags="$(CFLAGS) $(CPPFLAGS) -DCONFIG_QEMU_X86_DATAPATH='\"${X86_DATAPATH}\"' -DVENDOR_$(VENDOR)" \
+ --extra-cflags="$(CFLAGS) $(CPPFLAGS) -DCONFIG_QEMU_DATAPATH='\"${DATAPATH}\"' -DVENDOR_$(VENDOR)" \
--extra-ldflags="$(LDFLAGS) -Wl,--as-needed" \
--prefix=/usr \
--sysconfdir=/etc \
--- End Message ---