* [Buildroot] [PATCH 1/1] package/qemu: security bump to version 6.1.0
@ 2021-08-28 10:21 Fabrice Fontaine
2021-08-28 11:56 ` Romain Naour
0 siblings, 1 reply; 4+ messages in thread
From: Fabrice Fontaine @ 2021-08-28 10:21 UTC (permalink / raw)
To: buildroot; +Cc: Romain Naour, Fabrice Fontaine
- Fixes CVE-2021-3527, CVE-2021-3544, CVE-2021-3545, CVE-2021-3546,
CVE-2021-3582, CVE-2021-3607 and CVE-2021-3608
- Drop second, fourth and fifth patches (already in version)
https://wiki.qemu.org/ChangeLog/6.1
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
.../0002-Fix-build-with-64-bits-time_t.patch | 98 -------------------
...atch => 0002-meson-add-tests-option.patch} | 0
....c-fix-fuse-lseek-on-uclibc-or-musl.patch} | 0
.../0004-Makefile-ignore-long-options.patch | 41 --------
...5-block-export-fuse.c-fix-musl-build.patch | 46 ---------
package/qemu/qemu.hash | 2 +-
package/qemu/qemu.mk | 2 +-
7 files changed, 2 insertions(+), 187 deletions(-)
delete mode 100644 package/qemu/0002-Fix-build-with-64-bits-time_t.patch
rename package/qemu/{0003-meson-add-tests-option.patch => 0002-meson-add-tests-option.patch} (100%)
rename package/qemu/{0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch => 0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch} (100%)
delete mode 100644 package/qemu/0004-Makefile-ignore-long-options.patch
delete mode 100644 package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
diff --git a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch b/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
deleted file mode 100644
index 934c0e28fd..0000000000
--- a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-From 839e51aa452345b440f8d2d0df84ab58bdedfcd1 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Sat, 14 Nov 2020 21:54:17 +0100
-Subject: [PATCH] Fix build with 64 bits time_t
-
-time element is deprecated on new input_event structure in kernel's
-input.h [1]
-
-This will avoid the following build failure:
-
-hw/input/virtio-input-host.c: In function 'virtio_input_host_handle_status':
-hw/input/virtio-input-host.c:198:28: error: 'struct input_event' has no member named 'time'
- 198 | if (gettimeofday(&evdev.time, NULL)) {
- | ^
-
-Fixes:
- - http://autobuild.buildroot.org/results/a538167e288c14208d557cd45446df86d3d599d5
- - http://autobuild.buildroot.org/results/efd4474fb4b6c0ce0ab3838ce130429c51e43bbb
-
-[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- contrib/vhost-user-input/main.c | 10 +++++++++-
- hw/input/virtio-input-host.c | 10 +++++++++-
- 2 files changed, 18 insertions(+), 2 deletions(-)
-
-diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/main.c
-index 6020c6f33a..e688c3e0a9 100644
---- a/contrib/vhost-user-input/main.c
-+++ b/contrib/vhost-user-input/main.c
-@@ -15,6 +15,11 @@
- #include "standard-headers/linux/virtio_input.h"
- #include "qapi/error.h"
-
-+#ifndef input_event_sec
-+#define input_event_sec time.tv_sec
-+#define input_event_usec time.tv_usec
-+#endif
-+
- enum {
- VHOST_USER_INPUT_MAX_QUEUES = 2,
- };
-@@ -113,13 +118,16 @@ vi_evdev_watch(VuDev *dev, int condition, void *data)
- static void vi_handle_status(VuInput *vi, virtio_input_event *event)
- {
- struct input_event evdev;
-+ struct timeval tval;
- int rc;
-
-- if (gettimeofday(&evdev.time, NULL)) {
-+ if (gettimeofday(&tval, NULL)) {
- perror("vi_handle_status: gettimeofday");
- return;
- }
-
-+ evdev.input_event_sec = tval.tv_sec;
-+ evdev.input_event_usec = tval.tv_usec;
- evdev.type = le16toh(event->type);
- evdev.code = le16toh(event->code);
- evdev.value = le32toh(event->value);
-diff --git a/hw/input/virtio-input-host.c b/hw/input/virtio-input-host.c
-index 85daf73f1a..2e261737e1 100644
---- a/hw/input/virtio-input-host.c
-+++ b/hw/input/virtio-input-host.c
-@@ -16,6 +16,11 @@
- #include <sys/ioctl.h>
- #include "standard-headers/linux/input.h"
-
-+#ifndef input_event_sec
-+#define input_event_sec time.tv_sec
-+#define input_event_usec time.tv_usec
-+#endif
-+
- /* ----------------------------------------------------------------- */
-
- static struct virtio_input_config virtio_input_host_config[] = {
-@@ -193,13 +198,16 @@ static void virtio_input_host_handle_status(VirtIOInput *vinput,
- {
- VirtIOInputHost *vih = VIRTIO_INPUT_HOST(vinput);
- struct input_event evdev;
-+ struct timeval tval;
- int rc;
-
-- if (gettimeofday(&evdev.time, NULL)) {
-+ if (gettimeofday(&tval, NULL)) {
- perror("virtio_input_host_handle_status: gettimeofday");
- return;
- }
-
-+ evdev.input_event_sec = tval.tv_sec;
-+ evdev.input_event_usec = tval.tv_usec;
- evdev.type = le16_to_cpu(event->type);
- evdev.code = le16_to_cpu(event->code);
- evdev.value = le32_to_cpu(event->value);
---
-2.29.2
-
diff --git a/package/qemu/0003-meson-add-tests-option.patch b/package/qemu/0002-meson-add-tests-option.patch
similarity index 100%
rename from package/qemu/0003-meson-add-tests-option.patch
rename to package/qemu/0002-meson-add-tests-option.patch
diff --git a/package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch b/package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
similarity index 100%
rename from package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
rename to package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
diff --git a/package/qemu/0004-Makefile-ignore-long-options.patch b/package/qemu/0004-Makefile-ignore-long-options.patch
deleted file mode 100644
index 2d14b70c03..0000000000
--- a/package/qemu/0004-Makefile-ignore-long-options.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 14833e24dea49303ebc2464813601054b6cdfcac Mon Sep 17 00:00:00 2001
-From: Alexey Neyman <stilor@att.net>
-Date: Wed, 21 Jul 2021 19:08:46 -0700
-Subject: [PATCH] Makefile: ignore long options
-
-When searching for options like -n in MAKEFLAGS, current code may result
-in a false positive match when make is invoked with long options like
---no-print-directory. This has been observed with certain versions of
-host make (e.g. 3.82) while building the Qemu package in buildroot.
-
-Filter out such long options before searching for one-character options.
-
-Signed-off-by: Alexey Neyman <stilor@att.net>
-Message-Id: <20210722020846.3678817-1-stilor@att.net>
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
----
- Makefile | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 6c36330eef..401c623a65 100644
---- a/Makefile
-+++ b/Makefile
-@@ -129,9 +129,11 @@ endif
- # 4. Rules to bridge to other makefiles
-
- ifneq ($(NINJA),)
--MAKE.n = $(findstring n,$(firstword $(MAKEFLAGS)))
--MAKE.k = $(findstring k,$(firstword $(MAKEFLAGS)))
--MAKE.q = $(findstring q,$(firstword $(MAKEFLAGS)))
-+# Filter out long options to avoid flags like --no-print-directory which
-+# may result in false positive match for MAKE.n
-+MAKE.n = $(findstring n,$(firstword $(filter-out --%,$(MAKEFLAGS))))
-+MAKE.k = $(findstring k,$(firstword $(filter-out --%,$(MAKEFLAGS))))
-+MAKE.q = $(findstring q,$(firstword $(filter-out --%,$(MAKEFLAGS))))
- MAKE.nq = $(if $(word 2, $(MAKE.n) $(MAKE.q)),nq)
- NINJAFLAGS = $(if $V,-v) $(if $(MAKE.n), -n) $(if $(MAKE.k), -k0) \
- $(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \
---
-2.27.0
-
diff --git a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch b/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
deleted file mode 100644
index 0da6b3ff73..0000000000
--- a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 4d5280c066eb46a31556044fb52c2618928b0019 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Mon, 9 Aug 2021 10:04:07 +0200
-Subject: [PATCH] block/export/fuse.c: fix musl build
-
-Fix the following build failure on musl raised since version 6.0.0 and
-https://gitlab.com/qemu-project/qemu/-/commit/4ca37a96a75aafe7a37ba51ab1912b09b7190a6b
-because musl does not define FALLOC_FL_ZERO_RANGE:
-
-../block/export/fuse.c: In function 'fuse_fallocate':
-../block/export/fuse.c:563:23: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function)
- 563 | } else if (mode & FALLOC_FL_ZERO_RANGE) {
- | ^~~~~~~~~~~~~~~~~~~~
-
-Fixes:
- - http://autobuild.buildroot.org/results/b96e3d364fd1f8bbfb18904a742e73327d308f64
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Upstream status: sent to qemu-devel@nongnu.org]
----
- block/export/fuse.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/block/export/fuse.c b/block/export/fuse.c
-index ada9e263eb..07e31129a6 100644
---- a/block/export/fuse.c
-+++ b/block/export/fuse.c
-@@ -635,6 +635,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
- offset += size;
- length -= size;
- } while (ret == 0 && length > 0);
-+#ifdef FALLOC_FL_ZERO_RANGE
- } else if (mode & FALLOC_FL_ZERO_RANGE) {
- if (!(mode & FALLOC_FL_KEEP_SIZE) && offset + length > blk_len) {
- /* No need for zeroes, we are going to write them ourselves */
-@@ -654,6 +655,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
- offset += size;
- length -= size;
- } while (ret == 0 && length > 0);
-+#endif
- } else if (!mode) {
- /* We can only fallocate at the EOF with a truncate */
- if (offset < blk_len) {
---
-2.30.2
-
diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash
index 5e873791b8..0613fce493 100644
--- a/package/qemu/qemu.hash
+++ b/package/qemu/qemu.hash
@@ -1,4 +1,4 @@
# Locally computed, tarball verified with GPG signature
-sha256 87bc1a471ca24b97e7005711066007d443423d19aacda3d442558ae032fa30b9 qemu-6.0.0.tar.xz
+sha256 eebc089db3414bbeedf1e464beda0a7515aad30f73261abc246c9b27503a3c96 qemu-6.1.0.tar.xz
sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index a58bc9024a..37dfc63907 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -4,7 +4,7 @@
#
################################################################################
-QEMU_VERSION = 6.0.0
+QEMU_VERSION = 6.1.0
QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz
QEMU_SITE = http://download.qemu.org
QEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c
--
2.32.0
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/qemu: security bump to version 6.1.0
2021-08-28 10:21 [Buildroot] [PATCH 1/1] package/qemu: security bump to version 6.1.0 Fabrice Fontaine
@ 2021-08-28 11:56 ` Romain Naour
2021-08-28 12:32 ` Fabrice Fontaine
0 siblings, 1 reply; 4+ messages in thread
From: Romain Naour @ 2021-08-28 11:56 UTC (permalink / raw)
To: Fabrice Fontaine, buildroot
Hello Fabrice,
Le 28/08/2021 à 12:21, Fabrice Fontaine a écrit :
> - Fixes CVE-2021-3527, CVE-2021-3544, CVE-2021-3545, CVE-2021-3546,
> CVE-2021-3582, CVE-2021-3607 and CVE-2021-3608
> - Drop second, fourth and fifth patches (already in version)
>
> https://wiki.qemu.org/ChangeLog/6.1
NAK, qemu 6.1 is not really a minor update.
There are some important dependencies changes like minimum gcc is now 7.5.0.
https://wiki.qemu.org/ChangeLog/6.1#Build_Information
This means that we have to update our gitlab-ci container (using gcc 6.x) used
to build all qemu defconfigs since host-qemu is build.
Also, I would add --disable-bpf to avoid issue with this new optional dependencies.
See my work in progress (feel free to comment and test):
https://gitlab.com/kubu93/buildroot/-/pipelines/359619546
https://gitlab.com/kubu93/buildroot/-/commits/qemu-6.1.0-defconfigs
You can notice a build issue with csky toolchain, see:
http://lists.busybox.net/pipermail/buildroot/2021-August/621504.html
I would suggest to try the qemu bump with gitlab-ci :)
Best regards,
Romain
>
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
> .../0002-Fix-build-with-64-bits-time_t.patch | 98 -------------------
> ...atch => 0002-meson-add-tests-option.patch} | 0
> ....c-fix-fuse-lseek-on-uclibc-or-musl.patch} | 0
> .../0004-Makefile-ignore-long-options.patch | 41 --------
> ...5-block-export-fuse.c-fix-musl-build.patch | 46 ---------
> package/qemu/qemu.hash | 2 +-
> package/qemu/qemu.mk | 2 +-
> 7 files changed, 2 insertions(+), 187 deletions(-)
> delete mode 100644 package/qemu/0002-Fix-build-with-64-bits-time_t.patch
> rename package/qemu/{0003-meson-add-tests-option.patch => 0002-meson-add-tests-option.patch} (100%)
> rename package/qemu/{0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch => 0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch} (100%)
> delete mode 100644 package/qemu/0004-Makefile-ignore-long-options.patch
> delete mode 100644 package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
>
> diff --git a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch b/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
> deleted file mode 100644
> index 934c0e28fd..0000000000
> --- a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
> +++ /dev/null
> @@ -1,98 +0,0 @@
> -From 839e51aa452345b440f8d2d0df84ab58bdedfcd1 Mon Sep 17 00:00:00 2001
> -From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> -Date: Sat, 14 Nov 2020 21:54:17 +0100
> -Subject: [PATCH] Fix build with 64 bits time_t
> -
> -time element is deprecated on new input_event structure in kernel's
> -input.h [1]
> -
> -This will avoid the following build failure:
> -
> -hw/input/virtio-input-host.c: In function 'virtio_input_host_handle_status':
> -hw/input/virtio-input-host.c:198:28: error: 'struct input_event' has no member named 'time'
> - 198 | if (gettimeofday(&evdev.time, NULL)) {
> - | ^
> -
> -Fixes:
> - - http://autobuild.buildroot.org/results/a538167e288c14208d557cd45446df86d3d599d5
> - - http://autobuild.buildroot.org/results/efd4474fb4b6c0ce0ab3838ce130429c51e43bbb
> -
> -[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f
> -
> -Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ----
> - contrib/vhost-user-input/main.c | 10 +++++++++-
> - hw/input/virtio-input-host.c | 10 +++++++++-
> - 2 files changed, 18 insertions(+), 2 deletions(-)
> -
> -diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/main.c
> -index 6020c6f33a..e688c3e0a9 100644
> ---- a/contrib/vhost-user-input/main.c
> -+++ b/contrib/vhost-user-input/main.c
> -@@ -15,6 +15,11 @@
> - #include "standard-headers/linux/virtio_input.h"
> - #include "qapi/error.h"
> -
> -+#ifndef input_event_sec
> -+#define input_event_sec time.tv_sec
> -+#define input_event_usec time.tv_usec
> -+#endif
> -+
> - enum {
> - VHOST_USER_INPUT_MAX_QUEUES = 2,
> - };
> -@@ -113,13 +118,16 @@ vi_evdev_watch(VuDev *dev, int condition, void *data)
> - static void vi_handle_status(VuInput *vi, virtio_input_event *event)
> - {
> - struct input_event evdev;
> -+ struct timeval tval;
> - int rc;
> -
> -- if (gettimeofday(&evdev.time, NULL)) {
> -+ if (gettimeofday(&tval, NULL)) {
> - perror("vi_handle_status: gettimeofday");
> - return;
> - }
> -
> -+ evdev.input_event_sec = tval.tv_sec;
> -+ evdev.input_event_usec = tval.tv_usec;
> - evdev.type = le16toh(event->type);
> - evdev.code = le16toh(event->code);
> - evdev.value = le32toh(event->value);
> -diff --git a/hw/input/virtio-input-host.c b/hw/input/virtio-input-host.c
> -index 85daf73f1a..2e261737e1 100644
> ---- a/hw/input/virtio-input-host.c
> -+++ b/hw/input/virtio-input-host.c
> -@@ -16,6 +16,11 @@
> - #include <sys/ioctl.h>
> - #include "standard-headers/linux/input.h"
> -
> -+#ifndef input_event_sec
> -+#define input_event_sec time.tv_sec
> -+#define input_event_usec time.tv_usec
> -+#endif
> -+
> - /* ----------------------------------------------------------------- */
> -
> - static struct virtio_input_config virtio_input_host_config[] = {
> -@@ -193,13 +198,16 @@ static void virtio_input_host_handle_status(VirtIOInput *vinput,
> - {
> - VirtIOInputHost *vih = VIRTIO_INPUT_HOST(vinput);
> - struct input_event evdev;
> -+ struct timeval tval;
> - int rc;
> -
> -- if (gettimeofday(&evdev.time, NULL)) {
> -+ if (gettimeofday(&tval, NULL)) {
> - perror("virtio_input_host_handle_status: gettimeofday");
> - return;
> - }
> -
> -+ evdev.input_event_sec = tval.tv_sec;
> -+ evdev.input_event_usec = tval.tv_usec;
> - evdev.type = le16_to_cpu(event->type);
> - evdev.code = le16_to_cpu(event->code);
> - evdev.value = le32_to_cpu(event->value);
> ---
> -2.29.2
> -
> diff --git a/package/qemu/0003-meson-add-tests-option.patch b/package/qemu/0002-meson-add-tests-option.patch
> similarity index 100%
> rename from package/qemu/0003-meson-add-tests-option.patch
> rename to package/qemu/0002-meson-add-tests-option.patch
> diff --git a/package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch b/package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
> similarity index 100%
> rename from package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
> rename to package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
> diff --git a/package/qemu/0004-Makefile-ignore-long-options.patch b/package/qemu/0004-Makefile-ignore-long-options.patch
> deleted file mode 100644
> index 2d14b70c03..0000000000
> --- a/package/qemu/0004-Makefile-ignore-long-options.patch
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -From 14833e24dea49303ebc2464813601054b6cdfcac Mon Sep 17 00:00:00 2001
> -From: Alexey Neyman <stilor@att.net>
> -Date: Wed, 21 Jul 2021 19:08:46 -0700
> -Subject: [PATCH] Makefile: ignore long options
> -
> -When searching for options like -n in MAKEFLAGS, current code may result
> -in a false positive match when make is invoked with long options like
> ---no-print-directory. This has been observed with certain versions of
> -host make (e.g. 3.82) while building the Qemu package in buildroot.
> -
> -Filter out such long options before searching for one-character options.
> -
> -Signed-off-by: Alexey Neyman <stilor@att.net>
> -Message-Id: <20210722020846.3678817-1-stilor@att.net>
> -Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ----
> - Makefile | 8 +++++---
> - 1 file changed, 5 insertions(+), 3 deletions(-)
> -
> -diff --git a/Makefile b/Makefile
> -index 6c36330eef..401c623a65 100644
> ---- a/Makefile
> -+++ b/Makefile
> -@@ -129,9 +129,11 @@ endif
> - # 4. Rules to bridge to other makefiles
> -
> - ifneq ($(NINJA),)
> --MAKE.n = $(findstring n,$(firstword $(MAKEFLAGS)))
> --MAKE.k = $(findstring k,$(firstword $(MAKEFLAGS)))
> --MAKE.q = $(findstring q,$(firstword $(MAKEFLAGS)))
> -+# Filter out long options to avoid flags like --no-print-directory which
> -+# may result in false positive match for MAKE.n
> -+MAKE.n = $(findstring n,$(firstword $(filter-out --%,$(MAKEFLAGS))))
> -+MAKE.k = $(findstring k,$(firstword $(filter-out --%,$(MAKEFLAGS))))
> -+MAKE.q = $(findstring q,$(firstword $(filter-out --%,$(MAKEFLAGS))))
> - MAKE.nq = $(if $(word 2, $(MAKE.n) $(MAKE.q)),nq)
> - NINJAFLAGS = $(if $V,-v) $(if $(MAKE.n), -n) $(if $(MAKE.k), -k0) \
> - $(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \
> ---
> -2.27.0
> -
> diff --git a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch b/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
> deleted file mode 100644
> index 0da6b3ff73..0000000000
> --- a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
> +++ /dev/null
> @@ -1,46 +0,0 @@
> -From 4d5280c066eb46a31556044fb52c2618928b0019 Mon Sep 17 00:00:00 2001
> -From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> -Date: Mon, 9 Aug 2021 10:04:07 +0200
> -Subject: [PATCH] block/export/fuse.c: fix musl build
> -
> -Fix the following build failure on musl raised since version 6.0.0 and
> -https://gitlab.com/qemu-project/qemu/-/commit/4ca37a96a75aafe7a37ba51ab1912b09b7190a6b
> -because musl does not define FALLOC_FL_ZERO_RANGE:
> -
> -../block/export/fuse.c: In function 'fuse_fallocate':
> -../block/export/fuse.c:563:23: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function)
> - 563 | } else if (mode & FALLOC_FL_ZERO_RANGE) {
> - | ^~~~~~~~~~~~~~~~~~~~
> -
> -Fixes:
> - - http://autobuild.buildroot.org/results/b96e3d364fd1f8bbfb18904a742e73327d308f64
> -
> -Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> -[Upstream status: sent to qemu-devel@nongnu.org]
> ----
> - block/export/fuse.c | 2 ++
> - 1 file changed, 2 insertions(+)
> -
> -diff --git a/block/export/fuse.c b/block/export/fuse.c
> -index ada9e263eb..07e31129a6 100644
> ---- a/block/export/fuse.c
> -+++ b/block/export/fuse.c
> -@@ -635,6 +635,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
> - offset += size;
> - length -= size;
> - } while (ret == 0 && length > 0);
> -+#ifdef FALLOC_FL_ZERO_RANGE
> - } else if (mode & FALLOC_FL_ZERO_RANGE) {
> - if (!(mode & FALLOC_FL_KEEP_SIZE) && offset + length > blk_len) {
> - /* No need for zeroes, we are going to write them ourselves */
> -@@ -654,6 +655,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
> - offset += size;
> - length -= size;
> - } while (ret == 0 && length > 0);
> -+#endif
> - } else if (!mode) {
> - /* We can only fallocate at the EOF with a truncate */
> - if (offset < blk_len) {
> ---
> -2.30.2
> -
> diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash
> index 5e873791b8..0613fce493 100644
> --- a/package/qemu/qemu.hash
> +++ b/package/qemu/qemu.hash
> @@ -1,4 +1,4 @@
> # Locally computed, tarball verified with GPG signature
> -sha256 87bc1a471ca24b97e7005711066007d443423d19aacda3d442558ae032fa30b9 qemu-6.0.0.tar.xz
> +sha256 eebc089db3414bbeedf1e464beda0a7515aad30f73261abc246c9b27503a3c96 qemu-6.1.0.tar.xz
> sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING
> sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
> diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
> index a58bc9024a..37dfc63907 100644
> --- a/package/qemu/qemu.mk
> +++ b/package/qemu/qemu.mk
> @@ -4,7 +4,7 @@
> #
> ################################################################################
>
> -QEMU_VERSION = 6.0.0
> +QEMU_VERSION = 6.1.0
> QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz
> QEMU_SITE = http://download.qemu.org
> QEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c
>
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/qemu: security bump to version 6.1.0
2021-08-28 11:56 ` Romain Naour
@ 2021-08-28 12:32 ` Fabrice Fontaine
2021-08-28 13:08 ` Romain Naour
0 siblings, 1 reply; 4+ messages in thread
From: Fabrice Fontaine @ 2021-08-28 12:32 UTC (permalink / raw)
To: Romain Naour; +Cc: Buildroot Mailing List
Hello Romain,
Le sam. 28 août 2021 à 13:56, Romain Naour <romain.naour@gmail.com> a écrit :
>
> Hello Fabrice,
>
> Le 28/08/2021 à 12:21, Fabrice Fontaine a écrit :
> > - Fixes CVE-2021-3527, CVE-2021-3544, CVE-2021-3545, CVE-2021-3546,
> > CVE-2021-3582, CVE-2021-3607 and CVE-2021-3608
> > - Drop second, fourth and fifth patches (already in version)
> >
> > https://wiki.qemu.org/ChangeLog/6.1
>
> NAK, qemu 6.1 is not really a minor update.
> There are some important dependencies changes like minimum gcc is now 7.5.0.
Indeed, it seems that there are a lot of changes. that I didn't notice.
What should we do for those CVEs? Should we only fix CVE-2021-3682
which is set as High with CVSS 3.1?
>
> https://wiki.qemu.org/ChangeLog/6.1#Build_Information
>
> This means that we have to update our gitlab-ci container (using gcc 6.x) used
> to build all qemu defconfigs since host-qemu is build.
>
> Also, I would add --disable-bpf to avoid issue with this new optional dependencies.
>
> See my work in progress (feel free to comment and test):
> https://gitlab.com/kubu93/buildroot/-/pipelines/359619546
> https://gitlab.com/kubu93/buildroot/-/commits/qemu-6.1.0-defconfigs
>
> You can notice a build issue with csky toolchain, see:
> http://lists.busybox.net/pipermail/buildroot/2021-August/621504.html
>
> I would suggest to try the qemu bump with gitlab-ci :)
>
> Best regards,
> Romain
>
> >
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > ---
> > .../0002-Fix-build-with-64-bits-time_t.patch | 98 -------------------
> > ...atch => 0002-meson-add-tests-option.patch} | 0
> > ....c-fix-fuse-lseek-on-uclibc-or-musl.patch} | 0
> > .../0004-Makefile-ignore-long-options.patch | 41 --------
> > ...5-block-export-fuse.c-fix-musl-build.patch | 46 ---------
> > package/qemu/qemu.hash | 2 +-
> > package/qemu/qemu.mk | 2 +-
> > 7 files changed, 2 insertions(+), 187 deletions(-)
> > delete mode 100644 package/qemu/0002-Fix-build-with-64-bits-time_t.patch
> > rename package/qemu/{0003-meson-add-tests-option.patch => 0002-meson-add-tests-option.patch} (100%)
> > rename package/qemu/{0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch => 0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch} (100%)
> > delete mode 100644 package/qemu/0004-Makefile-ignore-long-options.patch
> > delete mode 100644 package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
> >
> > diff --git a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch b/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
> > deleted file mode 100644
> > index 934c0e28fd..0000000000
> > --- a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
> > +++ /dev/null
> > @@ -1,98 +0,0 @@
> > -From 839e51aa452345b440f8d2d0df84ab58bdedfcd1 Mon Sep 17 00:00:00 2001
> > -From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > -Date: Sat, 14 Nov 2020 21:54:17 +0100
> > -Subject: [PATCH] Fix build with 64 bits time_t
> > -
> > -time element is deprecated on new input_event structure in kernel's
> > -input.h [1]
> > -
> > -This will avoid the following build failure:
> > -
> > -hw/input/virtio-input-host.c: In function 'virtio_input_host_handle_status':
> > -hw/input/virtio-input-host.c:198:28: error: 'struct input_event' has no member named 'time'
> > - 198 | if (gettimeofday(&evdev.time, NULL)) {
> > - | ^
> > -
> > -Fixes:
> > - - http://autobuild.buildroot.org/results/a538167e288c14208d557cd45446df86d3d599d5
> > - - http://autobuild.buildroot.org/results/efd4474fb4b6c0ce0ab3838ce130429c51e43bbb
> > -
> > -[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f
> > -
> > -Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > ----
> > - contrib/vhost-user-input/main.c | 10 +++++++++-
> > - hw/input/virtio-input-host.c | 10 +++++++++-
> > - 2 files changed, 18 insertions(+), 2 deletions(-)
> > -
> > -diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/main.c
> > -index 6020c6f33a..e688c3e0a9 100644
> > ---- a/contrib/vhost-user-input/main.c
> > -+++ b/contrib/vhost-user-input/main.c
> > -@@ -15,6 +15,11 @@
> > - #include "standard-headers/linux/virtio_input.h"
> > - #include "qapi/error.h"
> > -
> > -+#ifndef input_event_sec
> > -+#define input_event_sec time.tv_sec
> > -+#define input_event_usec time.tv_usec
> > -+#endif
> > -+
> > - enum {
> > - VHOST_USER_INPUT_MAX_QUEUES = 2,
> > - };
> > -@@ -113,13 +118,16 @@ vi_evdev_watch(VuDev *dev, int condition, void *data)
> > - static void vi_handle_status(VuInput *vi, virtio_input_event *event)
> > - {
> > - struct input_event evdev;
> > -+ struct timeval tval;
> > - int rc;
> > -
> > -- if (gettimeofday(&evdev.time, NULL)) {
> > -+ if (gettimeofday(&tval, NULL)) {
> > - perror("vi_handle_status: gettimeofday");
> > - return;
> > - }
> > -
> > -+ evdev.input_event_sec = tval.tv_sec;
> > -+ evdev.input_event_usec = tval.tv_usec;
> > - evdev.type = le16toh(event->type);
> > - evdev.code = le16toh(event->code);
> > - evdev.value = le32toh(event->value);
> > -diff --git a/hw/input/virtio-input-host.c b/hw/input/virtio-input-host.c
> > -index 85daf73f1a..2e261737e1 100644
> > ---- a/hw/input/virtio-input-host.c
> > -+++ b/hw/input/virtio-input-host.c
> > -@@ -16,6 +16,11 @@
> > - #include <sys/ioctl.h>
> > - #include "standard-headers/linux/input.h"
> > -
> > -+#ifndef input_event_sec
> > -+#define input_event_sec time.tv_sec
> > -+#define input_event_usec time.tv_usec
> > -+#endif
> > -+
> > - /* ----------------------------------------------------------------- */
> > -
> > - static struct virtio_input_config virtio_input_host_config[] = {
> > -@@ -193,13 +198,16 @@ static void virtio_input_host_handle_status(VirtIOInput *vinput,
> > - {
> > - VirtIOInputHost *vih = VIRTIO_INPUT_HOST(vinput);
> > - struct input_event evdev;
> > -+ struct timeval tval;
> > - int rc;
> > -
> > -- if (gettimeofday(&evdev.time, NULL)) {
> > -+ if (gettimeofday(&tval, NULL)) {
> > - perror("virtio_input_host_handle_status: gettimeofday");
> > - return;
> > - }
> > -
> > -+ evdev.input_event_sec = tval.tv_sec;
> > -+ evdev.input_event_usec = tval.tv_usec;
> > - evdev.type = le16_to_cpu(event->type);
> > - evdev.code = le16_to_cpu(event->code);
> > - evdev.value = le32_to_cpu(event->value);
> > ---
> > -2.29.2
> > -
> > diff --git a/package/qemu/0003-meson-add-tests-option.patch b/package/qemu/0002-meson-add-tests-option.patch
> > similarity index 100%
> > rename from package/qemu/0003-meson-add-tests-option.patch
> > rename to package/qemu/0002-meson-add-tests-option.patch
> > diff --git a/package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch b/package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
> > similarity index 100%
> > rename from package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
> > rename to package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
> > diff --git a/package/qemu/0004-Makefile-ignore-long-options.patch b/package/qemu/0004-Makefile-ignore-long-options.patch
> > deleted file mode 100644
> > index 2d14b70c03..0000000000
> > --- a/package/qemu/0004-Makefile-ignore-long-options.patch
> > +++ /dev/null
> > @@ -1,41 +0,0 @@
> > -From 14833e24dea49303ebc2464813601054b6cdfcac Mon Sep 17 00:00:00 2001
> > -From: Alexey Neyman <stilor@att.net>
> > -Date: Wed, 21 Jul 2021 19:08:46 -0700
> > -Subject: [PATCH] Makefile: ignore long options
> > -
> > -When searching for options like -n in MAKEFLAGS, current code may result
> > -in a false positive match when make is invoked with long options like
> > ---no-print-directory. This has been observed with certain versions of
> > -host make (e.g. 3.82) while building the Qemu package in buildroot.
> > -
> > -Filter out such long options before searching for one-character options.
> > -
> > -Signed-off-by: Alexey Neyman <stilor@att.net>
> > -Message-Id: <20210722020846.3678817-1-stilor@att.net>
> > -Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> > ----
> > - Makefile | 8 +++++---
> > - 1 file changed, 5 insertions(+), 3 deletions(-)
> > -
> > -diff --git a/Makefile b/Makefile
> > -index 6c36330eef..401c623a65 100644
> > ---- a/Makefile
> > -+++ b/Makefile
> > -@@ -129,9 +129,11 @@ endif
> > - # 4. Rules to bridge to other makefiles
> > -
> > - ifneq ($(NINJA),)
> > --MAKE.n = $(findstring n,$(firstword $(MAKEFLAGS)))
> > --MAKE.k = $(findstring k,$(firstword $(MAKEFLAGS)))
> > --MAKE.q = $(findstring q,$(firstword $(MAKEFLAGS)))
> > -+# Filter out long options to avoid flags like --no-print-directory which
> > -+# may result in false positive match for MAKE.n
> > -+MAKE.n = $(findstring n,$(firstword $(filter-out --%,$(MAKEFLAGS))))
> > -+MAKE.k = $(findstring k,$(firstword $(filter-out --%,$(MAKEFLAGS))))
> > -+MAKE.q = $(findstring q,$(firstword $(filter-out --%,$(MAKEFLAGS))))
> > - MAKE.nq = $(if $(word 2, $(MAKE.n) $(MAKE.q)),nq)
> > - NINJAFLAGS = $(if $V,-v) $(if $(MAKE.n), -n) $(if $(MAKE.k), -k0) \
> > - $(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \
> > ---
> > -2.27.0
> > -
> > diff --git a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch b/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
> > deleted file mode 100644
> > index 0da6b3ff73..0000000000
> > --- a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
> > +++ /dev/null
> > @@ -1,46 +0,0 @@
> > -From 4d5280c066eb46a31556044fb52c2618928b0019 Mon Sep 17 00:00:00 2001
> > -From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > -Date: Mon, 9 Aug 2021 10:04:07 +0200
> > -Subject: [PATCH] block/export/fuse.c: fix musl build
> > -
> > -Fix the following build failure on musl raised since version 6.0.0 and
> > -https://gitlab.com/qemu-project/qemu/-/commit/4ca37a96a75aafe7a37ba51ab1912b09b7190a6b
> > -because musl does not define FALLOC_FL_ZERO_RANGE:
> > -
> > -../block/export/fuse.c: In function 'fuse_fallocate':
> > -../block/export/fuse.c:563:23: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function)
> > - 563 | } else if (mode & FALLOC_FL_ZERO_RANGE) {
> > - | ^~~~~~~~~~~~~~~~~~~~
> > -
> > -Fixes:
> > - - http://autobuild.buildroot.org/results/b96e3d364fd1f8bbfb18904a742e73327d308f64
> > -
> > -Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > -[Upstream status: sent to qemu-devel@nongnu.org]
> > ----
> > - block/export/fuse.c | 2 ++
> > - 1 file changed, 2 insertions(+)
> > -
> > -diff --git a/block/export/fuse.c b/block/export/fuse.c
> > -index ada9e263eb..07e31129a6 100644
> > ---- a/block/export/fuse.c
> > -+++ b/block/export/fuse.c
> > -@@ -635,6 +635,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
> > - offset += size;
> > - length -= size;
> > - } while (ret == 0 && length > 0);
> > -+#ifdef FALLOC_FL_ZERO_RANGE
> > - } else if (mode & FALLOC_FL_ZERO_RANGE) {
> > - if (!(mode & FALLOC_FL_KEEP_SIZE) && offset + length > blk_len) {
> > - /* No need for zeroes, we are going to write them ourselves */
> > -@@ -654,6 +655,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
> > - offset += size;
> > - length -= size;
> > - } while (ret == 0 && length > 0);
> > -+#endif
> > - } else if (!mode) {
> > - /* We can only fallocate at the EOF with a truncate */
> > - if (offset < blk_len) {
> > ---
> > -2.30.2
> > -
> > diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash
> > index 5e873791b8..0613fce493 100644
> > --- a/package/qemu/qemu.hash
> > +++ b/package/qemu/qemu.hash
> > @@ -1,4 +1,4 @@
> > # Locally computed, tarball verified with GPG signature
> > -sha256 87bc1a471ca24b97e7005711066007d443423d19aacda3d442558ae032fa30b9 qemu-6.0.0.tar.xz
> > +sha256 eebc089db3414bbeedf1e464beda0a7515aad30f73261abc246c9b27503a3c96 qemu-6.1.0.tar.xz
> > sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING
> > sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
> > diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
> > index a58bc9024a..37dfc63907 100644
> > --- a/package/qemu/qemu.mk
> > +++ b/package/qemu/qemu.mk
> > @@ -4,7 +4,7 @@
> > #
> > ################################################################################
> >
> > -QEMU_VERSION = 6.0.0
> > +QEMU_VERSION = 6.1.0
> > QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz
> > QEMU_SITE = http://download.qemu.org
> > QEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c
> >
>
Best Regards,
Fabrice
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/qemu: security bump to version 6.1.0
2021-08-28 12:32 ` Fabrice Fontaine
@ 2021-08-28 13:08 ` Romain Naour
0 siblings, 0 replies; 4+ messages in thread
From: Romain Naour @ 2021-08-28 13:08 UTC (permalink / raw)
To: Fabrice Fontaine; +Cc: Buildroot Mailing List
Hello Fabrice,
Le 28/08/2021 à 14:32, Fabrice Fontaine a écrit :
> Hello Romain,
>
> Le sam. 28 août 2021 à 13:56, Romain Naour <romain.naour@gmail.com> a écrit :
>>
>> Hello Fabrice,
>>
>> Le 28/08/2021 à 12:21, Fabrice Fontaine a écrit :
>>> - Fixes CVE-2021-3527, CVE-2021-3544, CVE-2021-3545, CVE-2021-3546,
>>> CVE-2021-3582, CVE-2021-3607 and CVE-2021-3608
>>> - Drop second, fourth and fifth patches (already in version)
>>>
>>> https://wiki.qemu.org/ChangeLog/6.1
>>
>> NAK, qemu 6.1 is not really a minor update.
>> There are some important dependencies changes like minimum gcc is now 7.5.0.
> Indeed, it seems that there are a lot of changes. that I didn't notice.
> What should we do for those CVEs? Should we only fix CVE-2021-3682
> which is set as High with CVSS 3.1?
Ideally upstream should create a stable branch for the qemu 6.0.x release but
this is not the case.
Yocto seems to backport CVE fixes one by one:
https://github.com/openembedded/openembedded-core/commit/e16cd155c5ef7cfe8b4d3a94485cb7b13fd95036
If you are motivated enough to send patches for them...
Best regards,
Romain
>>
>> https://wiki.qemu.org/ChangeLog/6.1#Build_Information
>>
>> This means that we have to update our gitlab-ci container (using gcc 6.x) used
>> to build all qemu defconfigs since host-qemu is build.
>>
>> Also, I would add --disable-bpf to avoid issue with this new optional dependencies.
>>
>> See my work in progress (feel free to comment and test):
>> https://gitlab.com/kubu93/buildroot/-/pipelines/359619546
>> https://gitlab.com/kubu93/buildroot/-/commits/qemu-6.1.0-defconfigs
>>
>> You can notice a build issue with csky toolchain, see:
>> http://lists.busybox.net/pipermail/buildroot/2021-August/621504.html
>>
>> I would suggest to try the qemu bump with gitlab-ci :)
>>
>> Best regards,
>> Romain
>>
>>>
>>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>>> ---
>>> .../0002-Fix-build-with-64-bits-time_t.patch | 98 -------------------
>>> ...atch => 0002-meson-add-tests-option.patch} | 0
>>> ....c-fix-fuse-lseek-on-uclibc-or-musl.patch} | 0
>>> .../0004-Makefile-ignore-long-options.patch | 41 --------
>>> ...5-block-export-fuse.c-fix-musl-build.patch | 46 ---------
>>> package/qemu/qemu.hash | 2 +-
>>> package/qemu/qemu.mk | 2 +-
>>> 7 files changed, 2 insertions(+), 187 deletions(-)
>>> delete mode 100644 package/qemu/0002-Fix-build-with-64-bits-time_t.patch
>>> rename package/qemu/{0003-meson-add-tests-option.patch => 0002-meson-add-tests-option.patch} (100%)
>>> rename package/qemu/{0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch => 0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch} (100%)
>>> delete mode 100644 package/qemu/0004-Makefile-ignore-long-options.patch
>>> delete mode 100644 package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
>>>
>>> diff --git a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch b/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
>>> deleted file mode 100644
>>> index 934c0e28fd..0000000000
>>> --- a/package/qemu/0002-Fix-build-with-64-bits-time_t.patch
>>> +++ /dev/null
>>> @@ -1,98 +0,0 @@
>>> -From 839e51aa452345b440f8d2d0df84ab58bdedfcd1 Mon Sep 17 00:00:00 2001
>>> -From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>>> -Date: Sat, 14 Nov 2020 21:54:17 +0100
>>> -Subject: [PATCH] Fix build with 64 bits time_t
>>> -
>>> -time element is deprecated on new input_event structure in kernel's
>>> -input.h [1]
>>> -
>>> -This will avoid the following build failure:
>>> -
>>> -hw/input/virtio-input-host.c: In function 'virtio_input_host_handle_status':
>>> -hw/input/virtio-input-host.c:198:28: error: 'struct input_event' has no member named 'time'
>>> - 198 | if (gettimeofday(&evdev.time, NULL)) {
>>> - | ^
>>> -
>>> -Fixes:
>>> - - http://autobuild.buildroot.org/results/a538167e288c14208d557cd45446df86d3d599d5
>>> - - http://autobuild.buildroot.org/results/efd4474fb4b6c0ce0ab3838ce130429c51e43bbb
>>> -
>>> -[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f
>>> -
>>> -Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>>> ----
>>> - contrib/vhost-user-input/main.c | 10 +++++++++-
>>> - hw/input/virtio-input-host.c | 10 +++++++++-
>>> - 2 files changed, 18 insertions(+), 2 deletions(-)
>>> -
>>> -diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/main.c
>>> -index 6020c6f33a..e688c3e0a9 100644
>>> ---- a/contrib/vhost-user-input/main.c
>>> -+++ b/contrib/vhost-user-input/main.c
>>> -@@ -15,6 +15,11 @@
>>> - #include "standard-headers/linux/virtio_input.h"
>>> - #include "qapi/error.h"
>>> -
>>> -+#ifndef input_event_sec
>>> -+#define input_event_sec time.tv_sec
>>> -+#define input_event_usec time.tv_usec
>>> -+#endif
>>> -+
>>> - enum {
>>> - VHOST_USER_INPUT_MAX_QUEUES = 2,
>>> - };
>>> -@@ -113,13 +118,16 @@ vi_evdev_watch(VuDev *dev, int condition, void *data)
>>> - static void vi_handle_status(VuInput *vi, virtio_input_event *event)
>>> - {
>>> - struct input_event evdev;
>>> -+ struct timeval tval;
>>> - int rc;
>>> -
>>> -- if (gettimeofday(&evdev.time, NULL)) {
>>> -+ if (gettimeofday(&tval, NULL)) {
>>> - perror("vi_handle_status: gettimeofday");
>>> - return;
>>> - }
>>> -
>>> -+ evdev.input_event_sec = tval.tv_sec;
>>> -+ evdev.input_event_usec = tval.tv_usec;
>>> - evdev.type = le16toh(event->type);
>>> - evdev.code = le16toh(event->code);
>>> - evdev.value = le32toh(event->value);
>>> -diff --git a/hw/input/virtio-input-host.c b/hw/input/virtio-input-host.c
>>> -index 85daf73f1a..2e261737e1 100644
>>> ---- a/hw/input/virtio-input-host.c
>>> -+++ b/hw/input/virtio-input-host.c
>>> -@@ -16,6 +16,11 @@
>>> - #include <sys/ioctl.h>
>>> - #include "standard-headers/linux/input.h"
>>> -
>>> -+#ifndef input_event_sec
>>> -+#define input_event_sec time.tv_sec
>>> -+#define input_event_usec time.tv_usec
>>> -+#endif
>>> -+
>>> - /* ----------------------------------------------------------------- */
>>> -
>>> - static struct virtio_input_config virtio_input_host_config[] = {
>>> -@@ -193,13 +198,16 @@ static void virtio_input_host_handle_status(VirtIOInput *vinput,
>>> - {
>>> - VirtIOInputHost *vih = VIRTIO_INPUT_HOST(vinput);
>>> - struct input_event evdev;
>>> -+ struct timeval tval;
>>> - int rc;
>>> -
>>> -- if (gettimeofday(&evdev.time, NULL)) {
>>> -+ if (gettimeofday(&tval, NULL)) {
>>> - perror("virtio_input_host_handle_status: gettimeofday");
>>> - return;
>>> - }
>>> -
>>> -+ evdev.input_event_sec = tval.tv_sec;
>>> -+ evdev.input_event_usec = tval.tv_usec;
>>> - evdev.type = le16_to_cpu(event->type);
>>> - evdev.code = le16_to_cpu(event->code);
>>> - evdev.value = le32_to_cpu(event->value);
>>> ---
>>> -2.29.2
>>> -
>>> diff --git a/package/qemu/0003-meson-add-tests-option.patch b/package/qemu/0002-meson-add-tests-option.patch
>>> similarity index 100%
>>> rename from package/qemu/0003-meson-add-tests-option.patch
>>> rename to package/qemu/0002-meson-add-tests-option.patch
>>> diff --git a/package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch b/package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
>>> similarity index 100%
>>> rename from package/qemu/0006-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
>>> rename to package/qemu/0003-block-export-fuse.c-fix-fuse-lseek-on-uclibc-or-musl.patch
>>> diff --git a/package/qemu/0004-Makefile-ignore-long-options.patch b/package/qemu/0004-Makefile-ignore-long-options.patch
>>> deleted file mode 100644
>>> index 2d14b70c03..0000000000
>>> --- a/package/qemu/0004-Makefile-ignore-long-options.patch
>>> +++ /dev/null
>>> @@ -1,41 +0,0 @@
>>> -From 14833e24dea49303ebc2464813601054b6cdfcac Mon Sep 17 00:00:00 2001
>>> -From: Alexey Neyman <stilor@att.net>
>>> -Date: Wed, 21 Jul 2021 19:08:46 -0700
>>> -Subject: [PATCH] Makefile: ignore long options
>>> -
>>> -When searching for options like -n in MAKEFLAGS, current code may result
>>> -in a false positive match when make is invoked with long options like
>>> ---no-print-directory. This has been observed with certain versions of
>>> -host make (e.g. 3.82) while building the Qemu package in buildroot.
>>> -
>>> -Filter out such long options before searching for one-character options.
>>> -
>>> -Signed-off-by: Alexey Neyman <stilor@att.net>
>>> -Message-Id: <20210722020846.3678817-1-stilor@att.net>
>>> -Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>>> ----
>>> - Makefile | 8 +++++---
>>> - 1 file changed, 5 insertions(+), 3 deletions(-)
>>> -
>>> -diff --git a/Makefile b/Makefile
>>> -index 6c36330eef..401c623a65 100644
>>> ---- a/Makefile
>>> -+++ b/Makefile
>>> -@@ -129,9 +129,11 @@ endif
>>> - # 4. Rules to bridge to other makefiles
>>> -
>>> - ifneq ($(NINJA),)
>>> --MAKE.n = $(findstring n,$(firstword $(MAKEFLAGS)))
>>> --MAKE.k = $(findstring k,$(firstword $(MAKEFLAGS)))
>>> --MAKE.q = $(findstring q,$(firstword $(MAKEFLAGS)))
>>> -+# Filter out long options to avoid flags like --no-print-directory which
>>> -+# may result in false positive match for MAKE.n
>>> -+MAKE.n = $(findstring n,$(firstword $(filter-out --%,$(MAKEFLAGS))))
>>> -+MAKE.k = $(findstring k,$(firstword $(filter-out --%,$(MAKEFLAGS))))
>>> -+MAKE.q = $(findstring q,$(firstword $(filter-out --%,$(MAKEFLAGS))))
>>> - MAKE.nq = $(if $(word 2, $(MAKE.n) $(MAKE.q)),nq)
>>> - NINJAFLAGS = $(if $V,-v) $(if $(MAKE.n), -n) $(if $(MAKE.k), -k0) \
>>> - $(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \
>>> ---
>>> -2.27.0
>>> -
>>> diff --git a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch b/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
>>> deleted file mode 100644
>>> index 0da6b3ff73..0000000000
>>> --- a/package/qemu/0005-block-export-fuse.c-fix-musl-build.patch
>>> +++ /dev/null
>>> @@ -1,46 +0,0 @@
>>> -From 4d5280c066eb46a31556044fb52c2618928b0019 Mon Sep 17 00:00:00 2001
>>> -From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>>> -Date: Mon, 9 Aug 2021 10:04:07 +0200
>>> -Subject: [PATCH] block/export/fuse.c: fix musl build
>>> -
>>> -Fix the following build failure on musl raised since version 6.0.0 and
>>> -https://gitlab.com/qemu-project/qemu/-/commit/4ca37a96a75aafe7a37ba51ab1912b09b7190a6b
>>> -because musl does not define FALLOC_FL_ZERO_RANGE:
>>> -
>>> -../block/export/fuse.c: In function 'fuse_fallocate':
>>> -../block/export/fuse.c:563:23: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function)
>>> - 563 | } else if (mode & FALLOC_FL_ZERO_RANGE) {
>>> - | ^~~~~~~~~~~~~~~~~~~~
>>> -
>>> -Fixes:
>>> - - http://autobuild.buildroot.org/results/b96e3d364fd1f8bbfb18904a742e73327d308f64
>>> -
>>> -Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>>> -[Upstream status: sent to qemu-devel@nongnu.org]
>>> ----
>>> - block/export/fuse.c | 2 ++
>>> - 1 file changed, 2 insertions(+)
>>> -
>>> -diff --git a/block/export/fuse.c b/block/export/fuse.c
>>> -index ada9e263eb..07e31129a6 100644
>>> ---- a/block/export/fuse.c
>>> -+++ b/block/export/fuse.c
>>> -@@ -635,6 +635,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
>>> - offset += size;
>>> - length -= size;
>>> - } while (ret == 0 && length > 0);
>>> -+#ifdef FALLOC_FL_ZERO_RANGE
>>> - } else if (mode & FALLOC_FL_ZERO_RANGE) {
>>> - if (!(mode & FALLOC_FL_KEEP_SIZE) && offset + length > blk_len) {
>>> - /* No need for zeroes, we are going to write them ourselves */
>>> -@@ -654,6 +655,7 @@ static void fuse_fallocate(fuse_req_t req, fuse_ino_t inode, int mode,
>>> - offset += size;
>>> - length -= size;
>>> - } while (ret == 0 && length > 0);
>>> -+#endif
>>> - } else if (!mode) {
>>> - /* We can only fallocate at the EOF with a truncate */
>>> - if (offset < blk_len) {
>>> ---
>>> -2.30.2
>>> -
>>> diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash
>>> index 5e873791b8..0613fce493 100644
>>> --- a/package/qemu/qemu.hash
>>> +++ b/package/qemu/qemu.hash
>>> @@ -1,4 +1,4 @@
>>> # Locally computed, tarball verified with GPG signature
>>> -sha256 87bc1a471ca24b97e7005711066007d443423d19aacda3d442558ae032fa30b9 qemu-6.0.0.tar.xz
>>> +sha256 eebc089db3414bbeedf1e464beda0a7515aad30f73261abc246c9b27503a3c96 qemu-6.1.0.tar.xz
>>> sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING
>>> sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
>>> diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
>>> index a58bc9024a..37dfc63907 100644
>>> --- a/package/qemu/qemu.mk
>>> +++ b/package/qemu/qemu.mk
>>> @@ -4,7 +4,7 @@
>>> #
>>> ################################################################################
>>>
>>> -QEMU_VERSION = 6.0.0
>>> +QEMU_VERSION = 6.1.0
>>> QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz
>>> QEMU_SITE = http://download.qemu.org
>>> QEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c
>>>
>>
> Best Regards,
>
> Fabrice
>
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-08-28 13:08 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-28 10:21 [Buildroot] [PATCH 1/1] package/qemu: security bump to version 6.1.0 Fabrice Fontaine
2021-08-28 11:56 ` Romain Naour
2021-08-28 12:32 ` Fabrice Fontaine
2021-08-28 13:08 ` Romain Naour
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.