diff options
22 files changed, 107 insertions, 625 deletions
diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc index 7c6399da45..3a78e20145 100644 --- a/meta/conf/distro/include/tcmode-default.inc +++ b/meta/conf/distro/include/tcmode-default.inc | |||
@@ -22,7 +22,7 @@ BINUVERSION ?= "2.40%" | |||
22 | GDBVERSION ?= "13.%" | 22 | GDBVERSION ?= "13.%" |
23 | GLIBCVERSION ?= "2.37" | 23 | GLIBCVERSION ?= "2.37" |
24 | LINUXLIBCVERSION ?= "6.1%" | 24 | LINUXLIBCVERSION ?= "6.1%" |
25 | QEMUVERSION ?= "7.2%" | 25 | QEMUVERSION ?= "8.0%" |
26 | GOVERSION ?= "1.20%" | 26 | GOVERSION ?= "1.20%" |
27 | LLVMVERSION ?= "15.%" | 27 | LLVMVERSION ?= "15.%" |
28 | RUSTVERSION ?= "1.68%" | 28 | RUSTVERSION ?= "1.68%" |
diff --git a/meta/recipes-devtools/qemu/qemu-native_7.2.0.bb b/meta/recipes-devtools/qemu/qemu-native_8.0.0.bb index a94dc0b61e..73a0f63f2b 100644 --- a/meta/recipes-devtools/qemu/qemu-native_7.2.0.bb +++ b/meta/recipes-devtools/qemu/qemu-native_8.0.0.bb | |||
@@ -4,6 +4,6 @@ DEPENDS = "glib-2.0-native zlib-native ninja-native meson-native" | |||
4 | 4 | ||
5 | require qemu-native.inc | 5 | require qemu-native.inc |
6 | 6 | ||
7 | EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-blobs --disable-guest-agent" | 7 | EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-install-blobs --disable-guest-agent" |
8 | 8 | ||
9 | PACKAGECONFIG ??= "pie" | 9 | PACKAGECONFIG ??= "pie" |
diff --git a/meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb b/meta/recipes-devtools/qemu/qemu-system-native_8.0.0.bb index 04c7c2a6ac..04c7c2a6ac 100644 --- a/meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb +++ b/meta/recipes-devtools/qemu/qemu-system-native_8.0.0.bb | |||
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc index 29bc34d743..2a9aa13912 100644 --- a/meta/recipes-devtools/qemu/qemu.inc +++ b/meta/recipes-devtools/qemu/qemu.inc | |||
@@ -18,7 +18,6 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ | |||
18 | file://powerpc_rom.bin \ | 18 | file://powerpc_rom.bin \ |
19 | file://run-ptest \ | 19 | file://run-ptest \ |
20 | file://0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch \ | 20 | file://0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch \ |
21 | file://0002-chardev-connect-socket-to-a-spawned-command.patch \ | ||
22 | file://0003-apic-fixup-fallthrough-to-PIC.patch \ | 21 | file://0003-apic-fixup-fallthrough-to-PIC.patch \ |
23 | file://0004-configure-Add-pkg-config-handling-for-libgcrypt.patch \ | 22 | file://0004-configure-Add-pkg-config-handling-for-libgcrypt.patch \ |
24 | file://0005-qemu-Do-not-include-file-if-not-exists.patch \ | 23 | file://0005-qemu-Do-not-include-file-if-not-exists.patch \ |
@@ -27,11 +26,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ | |||
27 | file://0008-tests-meson.build-use-relative-path-to-refer-to-file.patch \ | 26 | file://0008-tests-meson.build-use-relative-path-to-refer-to-file.patch \ |
28 | file://0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \ | 27 | file://0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \ |
29 | file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \ | 28 | file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \ |
30 | file://0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch \ | ||
31 | file://0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch \ | 29 | file://0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch \ |
32 | file://0001-configure-Fix-check-tcg-not-executing-any-tests.patch \ | ||
33 | file://0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch \ | ||
34 | file://0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch \ | ||
35 | file://0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch \ | 30 | file://0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch \ |
36 | file://qemu-guest-agent.init \ | 31 | file://qemu-guest-agent.init \ |
37 | file://qemu-guest-agent.udev \ | 32 | file://qemu-guest-agent.udev \ |
@@ -39,7 +34,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ | |||
39 | " | 34 | " |
40 | UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar" | 35 | UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar" |
41 | 36 | ||
42 | SRC_URI[sha256sum] = "5b49ce2687744dad494ae90a898c52204a3406e84d072482a1e1be854eeb2157" | 37 | SRC_URI[sha256sum] = "bb60f0341531181d6cc3969dd19a013d0427a87f918193970d9adb91131e56d0" |
43 | 38 | ||
44 | SRC_URI:append:class-target = " file://cross.patch" | 39 | SRC_URI:append:class-target = " file://cross.patch" |
45 | SRC_URI:append:class-nativesdk = " file://cross.patch" | 40 | SRC_URI:append:class-nativesdk = " file://cross.patch" |
diff --git a/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch b/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch deleted file mode 100644 index cd8121fed1..0000000000 --- a/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch +++ /dev/null | |||
@@ -1,69 +0,0 @@ | |||
1 | From afa96c55f2c270405de8984e2466067bbb44c0e4 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com> | ||
3 | Date: Tue, 10 Jan 2023 12:49:00 -0500 | ||
4 | Subject: [PATCH] Revert "linux-user: add more compat ioctl definitions" | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | This reverts commit c5495f4ecb0cdaaf2e9dddeb48f1689cdb520ca0. | ||
10 | |||
11 | glibc has fixed (in 2.36.9000-40-g774058d729) the problem | ||
12 | that caused a clash when both sys/mount.h annd linux/mount.h | ||
13 | are included, and backported this to the 2.36 stable release | ||
14 | too: | ||
15 | |||
16 | https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E | ||
17 | |||
18 | It is saner for QEMU to remove the workaround it applied for | ||
19 | glibc 2.36 and expect distros to ship the 2.36 maint release | ||
20 | with the fix. This avoids needing to add a further workaround | ||
21 | to QEMU to deal with the fact that linux/brtfs.h now also pulls | ||
22 | in linux/mount.h via linux/fs.h since Linux 6.1 | ||
23 | |||
24 | Upstream-Status: Backport from v8.0 (master) | ||
25 | |||
26 | Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> | ||
27 | Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> | ||
28 | Link: https://lore.kernel.org/r/20230110174901.2580297-2-berrange@redhat.com | ||
29 | Signed-off-by: Joel Stanley <joel@jms.id.au> | ||
30 | --- | ||
31 | linux-user/syscall.c | 25 ------------------------- | ||
32 | 1 file changed, 25 deletions(-) | ||
33 | |||
34 | diff --git a/linux-user/syscall.c b/linux-user/syscall.c | ||
35 | index f95a6161e..510de8edc 100644 | ||
36 | --- a/linux-user/syscall.c | ||
37 | +++ b/linux-user/syscall.c | ||
38 | @@ -111,31 +111,6 @@ | ||
39 | #define FS_IOC32_SETFLAGS _IOW('f', 2, int) | ||
40 | #define FS_IOC32_GETVERSION _IOR('v', 1, int) | ||
41 | #define FS_IOC32_SETVERSION _IOW('v', 2, int) | ||
42 | - | ||
43 | -#define BLKGETSIZE64 _IOR(0x12,114,size_t) | ||
44 | -#define BLKDISCARD _IO(0x12,119) | ||
45 | -#define BLKIOMIN _IO(0x12,120) | ||
46 | -#define BLKIOOPT _IO(0x12,121) | ||
47 | -#define BLKALIGNOFF _IO(0x12,122) | ||
48 | -#define BLKPBSZGET _IO(0x12,123) | ||
49 | -#define BLKDISCARDZEROES _IO(0x12,124) | ||
50 | -#define BLKSECDISCARD _IO(0x12,125) | ||
51 | -#define BLKROTATIONAL _IO(0x12,126) | ||
52 | -#define BLKZEROOUT _IO(0x12,127) | ||
53 | - | ||
54 | -#define FIBMAP _IO(0x00,1) | ||
55 | -#define FIGETBSZ _IO(0x00,2) | ||
56 | - | ||
57 | -struct file_clone_range { | ||
58 | - __s64 src_fd; | ||
59 | - __u64 src_offset; | ||
60 | - __u64 src_length; | ||
61 | - __u64 dest_offset; | ||
62 | -}; | ||
63 | - | ||
64 | -#define FICLONE _IOW(0x94, 9, int) | ||
65 | -#define FICLONERANGE _IOW(0x94, 13, struct file_clone_range) | ||
66 | - | ||
67 | #else | ||
68 | #include <linux/fs.h> | ||
69 | #endif | ||
diff --git a/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch b/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch deleted file mode 100644 index 66ae4deae1..0000000000 --- a/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch +++ /dev/null | |||
@@ -1,56 +0,0 @@ | |||
1 | From f295491361ed7fbe729ef6f029d83f68b8e2bee3 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mukilan Thiyagarajan <quic_mthiyaga@quicinc.com> | ||
3 | Date: Wed, 21 Dec 2022 09:04:06 +0000 | ||
4 | Subject: [PATCH] configure: Fix check-tcg not executing any tests | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | After configuring with --target-list=hexagon-linux-user | ||
10 | running `make check-tcg` just prints the following: | ||
11 | |||
12 | ``` | ||
13 | make: Nothing to be done for 'check-tcg' | ||
14 | ``` | ||
15 | |||
16 | In the probe_target_compiler function, the 'break' | ||
17 | command is used incorrectly. There are no lexically | ||
18 | enclosing loops associated with that break command which | ||
19 | is an unspecfied behaviour in the POSIX standard. | ||
20 | |||
21 | The dash shell implementation aborts the currently executing | ||
22 | loop, in this case, causing the rest of the logic for the loop | ||
23 | in line 2490 to be skipped, which means no Makefiles are | ||
24 | generated for the tcg target tests. | ||
25 | |||
26 | Fixes: c3b570b5a9a24d25 (configure: don't enable | ||
27 | cross compilers unless in target_list) | ||
28 | |||
29 | Signed-off-by: Mukilan Thiyagarajan <quic_mthiyaga@quicinc.com> | ||
30 | Reviewed-by: Richard Henderson <richard.henderson@linaro.org> | ||
31 | Link: https://patchew.org/QEMU/20221207082309.9966-1-quic._5Fmthiyaga@quicinc.com/ | ||
32 | Message-Id: <20221207082309.9966-1-quic_mthiyaga@quicinc.com> | ||
33 | Signed-off-by: Alex Bennée <alex.bennee@linaro.org> | ||
34 | Message-Id: <20221221090411.1995037-2-alex.bennee@linaro.org> | ||
35 | |||
36 | Upstream-Status: Backport [https://github.com/qemu/qemu/commit/73acb87be536d23e42db73a306104d8fd316ff20] | ||
37 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
38 | --- | ||
39 | configure | 4 +--- | ||
40 | 1 file changed, 1 insertion(+), 3 deletions(-) | ||
41 | |||
42 | diff --git a/configure b/configure | ||
43 | index 0c1db72b8..6b4589273 100755 | ||
44 | --- a/configure | ||
45 | +++ b/configure | ||
46 | @@ -1881,9 +1881,7 @@ probe_target_compiler() { | ||
47 | # We shall skip configuring the target compiler if the user didn't | ||
48 | # bother enabling an appropriate guest. This avoids building | ||
49 | # extraneous firmware images and tests. | ||
50 | - if test "${target_list#*$1}" != "$1"; then | ||
51 | - break; | ||
52 | - else | ||
53 | + if test "${target_list#*$1}" = "$1"; then | ||
54 | return 1 | ||
55 | fi | ||
56 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch b/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch deleted file mode 100644 index 1838c88f0e..0000000000 --- a/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch +++ /dev/null | |||
@@ -1,37 +0,0 @@ | |||
1 | From 38f5c88bf296dbbc04dcd57f36d64695055a2d3f Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Fri, 16 Dec 2022 20:19:49 -0800 | ||
4 | Subject: [PATCH 1/2] contrib/vhost-user-blk: Replace lseek64 with lseek | ||
5 | |||
6 | 64bit off_t is already in use since build uses _FILE_OFFSET_BITS=64 | ||
7 | already. Using lseek/off_t also makes it work with latest must without | ||
8 | using _LARGEFILE64_SOURCE macro. This macro is implied with _GNU_SOURCE | ||
9 | when using glibc but not with musl. | ||
10 | |||
11 | Upstream-Status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2022-12/msg02840.html] | ||
12 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
13 | Cc: Michael S. Tsirkin <mst@redhat.com> | ||
14 | CC: Raphael Norwitz <raphael.norwitz@nutanix.com> | ||
15 | --- | ||
16 | contrib/vhost-user-blk/vhost-user-blk.c | 4 ++-- | ||
17 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/contrib/vhost-user-blk/vhost-user-blk.c b/contrib/vhost-user-blk/vhost-user-blk.c | ||
20 | index aa99877fcd..7941694e53 100644 | ||
21 | --- a/contrib/vhost-user-blk/vhost-user-blk.c | ||
22 | +++ b/contrib/vhost-user-blk/vhost-user-blk.c | ||
23 | @@ -532,9 +532,9 @@ vub_get_blocksize(int fd) | ||
24 | static void | ||
25 | vub_initialize_config(int fd, struct virtio_blk_config *config) | ||
26 | { | ||
27 | - off64_t capacity; | ||
28 | + off_t capacity; | ||
29 | |||
30 | - capacity = lseek64(fd, 0, SEEK_END); | ||
31 | + capacity = lseek(fd, 0, SEEK_END); | ||
32 | config->capacity = capacity >> 9; | ||
33 | config->blk_size = vub_get_blocksize(fd); | ||
34 | config->size_max = 65536; | ||
35 | -- | ||
36 | 2.39.0 | ||
37 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch b/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch index 6fb160e6d3..c65508017d 100644 --- a/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch +++ b/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch | |||
@@ -18,11 +18,11 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com> | |||
18 | hw/mips/malta.c | 2 +- | 18 | hw/mips/malta.c | 2 +- |
19 | 1 file changed, 1 insertion(+), 1 deletion(-) | 19 | 1 file changed, 1 insertion(+), 1 deletion(-) |
20 | 20 | ||
21 | diff --git a/hw/mips/malta.c b/hw/mips/malta.c | 21 | Index: qemu-8.0.0/hw/mips/malta.c |
22 | index 628851172..12d37f35d 100644 | 22 | =================================================================== |
23 | --- a/hw/mips/malta.c | 23 | --- qemu-8.0.0.orig/hw/mips/malta.c |
24 | +++ b/hw/mips/malta.c | 24 | +++ qemu-8.0.0/hw/mips/malta.c |
25 | @@ -61,7 +61,7 @@ | 25 | @@ -64,7 +64,7 @@ |
26 | #define ENVP_PADDR 0x2000 | 26 | #define ENVP_PADDR 0x2000 |
27 | #define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR) | 27 | #define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR) |
28 | #define ENVP_NB_ENTRIES 16 | 28 | #define ENVP_NB_ENTRIES 16 |
@@ -31,6 +31,3 @@ index 628851172..12d37f35d 100644 | |||
31 | 31 | ||
32 | /* Hardware addresses */ | 32 | /* Hardware addresses */ |
33 | #define FLASH_ADDRESS 0x1e000000ULL | 33 | #define FLASH_ADDRESS 0x1e000000ULL |
34 | -- | ||
35 | 2.30.2 | ||
36 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch b/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch index 5ef1184e3c..a32ee57f8a 100644 --- a/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch +++ b/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch | |||
@@ -16,11 +16,11 @@ Upstream-Status: Pending | |||
16 | scripts/tracetool/backend/syslog.py | 4 +++- | 16 | scripts/tracetool/backend/syslog.py | 4 +++- |
17 | 3 files changed, 9 insertions(+), 3 deletions(-) | 17 | 3 files changed, 9 insertions(+), 3 deletions(-) |
18 | 18 | ||
19 | diff --git a/scripts/tracetool/backend/ftrace.py b/scripts/tracetool/backend/ftrace.py | 19 | Index: qemu-8.0.0/scripts/tracetool/backend/ftrace.py |
20 | index 5fa30ccc08..baed2ae61c 100644 | 20 | =================================================================== |
21 | --- a/scripts/tracetool/backend/ftrace.py | 21 | --- qemu-8.0.0.orig/scripts/tracetool/backend/ftrace.py |
22 | +++ b/scripts/tracetool/backend/ftrace.py | 22 | +++ qemu-8.0.0/scripts/tracetool/backend/ftrace.py |
23 | @@ -12,6 +12,8 @@ | 23 | @@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi" |
24 | __email__ = "stefanha@redhat.com" | 24 | __email__ = "stefanha@redhat.com" |
25 | 25 | ||
26 | 26 | ||
@@ -38,11 +38,11 @@ index 5fa30ccc08..baed2ae61c 100644 | |||
38 | fmt=event.fmt.rstrip("\n"), | 38 | fmt=event.fmt.rstrip("\n"), |
39 | argnames=argnames) | 39 | argnames=argnames) |
40 | 40 | ||
41 | diff --git a/scripts/tracetool/backend/log.py b/scripts/tracetool/backend/log.py | 41 | Index: qemu-8.0.0/scripts/tracetool/backend/log.py |
42 | index 17ba1cd90e..de27b7e62e 100644 | 42 | =================================================================== |
43 | --- a/scripts/tracetool/backend/log.py | 43 | --- qemu-8.0.0.orig/scripts/tracetool/backend/log.py |
44 | +++ b/scripts/tracetool/backend/log.py | 44 | +++ qemu-8.0.0/scripts/tracetool/backend/log.py |
45 | @@ -12,6 +12,8 @@ | 45 | @@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi" |
46 | __email__ = "stefanha@redhat.com" | 46 | __email__ = "stefanha@redhat.com" |
47 | 47 | ||
48 | 48 | ||
@@ -60,11 +60,11 @@ index 17ba1cd90e..de27b7e62e 100644 | |||
60 | name=event.name, | 60 | name=event.name, |
61 | fmt=event.fmt.rstrip("\n"), | 61 | fmt=event.fmt.rstrip("\n"), |
62 | argnames=argnames) | 62 | argnames=argnames) |
63 | diff --git a/scripts/tracetool/backend/syslog.py b/scripts/tracetool/backend/syslog.py | 63 | Index: qemu-8.0.0/scripts/tracetool/backend/syslog.py |
64 | index 5a3a00fe31..012970f6cc 100644 | 64 | =================================================================== |
65 | --- a/scripts/tracetool/backend/syslog.py | 65 | --- qemu-8.0.0.orig/scripts/tracetool/backend/syslog.py |
66 | +++ b/scripts/tracetool/backend/syslog.py | 66 | +++ qemu-8.0.0/scripts/tracetool/backend/syslog.py |
67 | @@ -12,6 +12,8 @@ | 67 | @@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi" |
68 | __email__ = "stefanha@redhat.com" | 68 | __email__ = "stefanha@redhat.com" |
69 | 69 | ||
70 | 70 | ||
@@ -82,6 +82,3 @@ index 5a3a00fe31..012970f6cc 100644 | |||
82 | name=event.name, | 82 | name=event.name, |
83 | fmt=event.fmt.rstrip("\n"), | 83 | fmt=event.fmt.rstrip("\n"), |
84 | argnames=argnames) | 84 | argnames=argnames) |
85 | -- | ||
86 | 2.39.2 | ||
87 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch b/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch deleted file mode 100644 index d754f21ad4..0000000000 --- a/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch +++ /dev/null | |||
@@ -1,78 +0,0 @@ | |||
1 | From e95c0a42940ca1cf763ca3374b36a9be030039d7 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com> | ||
3 | Date: Tue, 10 Jan 2023 12:49:01 -0500 | ||
4 | Subject: [PATCH] Revert "linux-user: fix compat with glibc >= 2.36 | ||
5 | sys/mount.h" | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | |||
10 | This reverts commit 3cd3df2a9584e6f753bb62a0028bd67124ab5532. | ||
11 | |||
12 | glibc has fixed (in 2.36.9000-40-g774058d729) the problem | ||
13 | that caused a clash when both sys/mount.h annd linux/mount.h | ||
14 | are included, and backported this to the 2.36 stable release | ||
15 | too: | ||
16 | |||
17 | https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E | ||
18 | |||
19 | It is saner for QEMU to remove the workaround it applied for | ||
20 | glibc 2.36 and expect distros to ship the 2.36 maint release | ||
21 | with the fix. This avoids needing to add a further workaround | ||
22 | to QEMU to deal with the fact that linux/brtfs.h now also pulls | ||
23 | in linux/mount.h via linux/fs.h since Linux 6.1 | ||
24 | |||
25 | Upstream-Status: Backport from v8.0 (master) | ||
26 | |||
27 | Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> | ||
28 | Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> | ||
29 | Link: https://lore.kernel.org/r/20230110174901.2580297-3-berrange@redhat.com | ||
30 | Signed-off-by: Joel Stanley <joel@jms.id.au> | ||
31 | --- | ||
32 | linux-user/syscall.c | 18 ------------------ | ||
33 | meson.build | 2 -- | ||
34 | 2 files changed, 20 deletions(-) | ||
35 | |||
36 | diff --git a/linux-user/syscall.c b/linux-user/syscall.c | ||
37 | index 510de8edc..13a67b84b 100644 | ||
38 | --- a/linux-user/syscall.c | ||
39 | +++ b/linux-user/syscall.c | ||
40 | @@ -95,25 +95,7 @@ | ||
41 | #include <linux/soundcard.h> | ||
42 | #include <linux/kd.h> | ||
43 | #include <linux/mtio.h> | ||
44 | - | ||
45 | -#ifdef HAVE_SYS_MOUNT_FSCONFIG | ||
46 | -/* | ||
47 | - * glibc >= 2.36 linux/mount.h conflicts with sys/mount.h, | ||
48 | - * which in turn prevents use of linux/fs.h. So we have to | ||
49 | - * define the constants ourselves for now. | ||
50 | - */ | ||
51 | -#define FS_IOC_GETFLAGS _IOR('f', 1, long) | ||
52 | -#define FS_IOC_SETFLAGS _IOW('f', 2, long) | ||
53 | -#define FS_IOC_GETVERSION _IOR('v', 1, long) | ||
54 | -#define FS_IOC_SETVERSION _IOW('v', 2, long) | ||
55 | -#define FS_IOC_FIEMAP _IOWR('f', 11, struct fiemap) | ||
56 | -#define FS_IOC32_GETFLAGS _IOR('f', 1, int) | ||
57 | -#define FS_IOC32_SETFLAGS _IOW('f', 2, int) | ||
58 | -#define FS_IOC32_GETVERSION _IOR('v', 1, int) | ||
59 | -#define FS_IOC32_SETVERSION _IOW('v', 2, int) | ||
60 | -#else | ||
61 | #include <linux/fs.h> | ||
62 | -#endif | ||
63 | #include <linux/fd.h> | ||
64 | #if defined(CONFIG_FIEMAP) | ||
65 | #include <linux/fiemap.h> | ||
66 | diff --git a/meson.build b/meson.build | ||
67 | index e44432370..f37ba4114 100644 | ||
68 | --- a/meson.build | ||
69 | +++ b/meson.build | ||
70 | @@ -2032,8 +2032,6 @@ config_host_data.set('HAVE_OPTRESET', | ||
71 | cc.has_header_symbol('getopt.h', 'optreset')) | ||
72 | config_host_data.set('HAVE_IPPROTO_MPTCP', | ||
73 | cc.has_header_symbol('netinet/in.h', 'IPPROTO_MPTCP')) | ||
74 | -config_host_data.set('HAVE_SYS_MOUNT_FSCONFIG', | ||
75 | - cc.has_header_symbol('sys/mount.h', 'FSCONFIG_SET_FLAG')) | ||
76 | |||
77 | # has_member | ||
78 | config_host_data.set('HAVE_SIGEV_NOTIFY_THREAD_ID', | ||
diff --git a/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch b/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch deleted file mode 100644 index 63a99c9620..0000000000 --- a/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch +++ /dev/null | |||
@@ -1,246 +0,0 @@ | |||
1 | From 14cd62607c9de232edf0a9b8503bd02783e03411 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alistair Francis <alistair.francis@xilinx.com> | ||
3 | Date: Thu, 21 Dec 2017 11:35:16 -0800 | ||
4 | Subject: [PATCH 02/12] chardev: connect socket to a spawned command | ||
5 | |||
6 | The command is started in a shell (sh -c) with stdin connect to QEMU | ||
7 | via a Unix domain stream socket. QEMU then exchanges data via its own | ||
8 | end of the socket, just like it normally does. | ||
9 | |||
10 | "-chardev socket" supports some ways of connecting via protocols like | ||
11 | telnet, but that is only a subset of the functionality supported by | ||
12 | tools socat. To use socat instead, for example to connect via a socks | ||
13 | proxy, use: | ||
14 | |||
15 | -chardev 'socket,id=socat,cmd=exec socat FD:0 SOCKS4A:socks-proxy.localdomain:example.com:9999,,socksuser=nobody' \ | ||
16 | -device usb-serial,chardev=socat | ||
17 | |||
18 | Beware that commas in the command must be escaped as double commas. | ||
19 | |||
20 | Or interactively in the console: | ||
21 | (qemu) chardev-add socket,id=cat,cmd=cat | ||
22 | (qemu) device_add usb-serial,chardev=cat | ||
23 | ^ac | ||
24 | # cat >/dev/ttyUSB0 | ||
25 | hello | ||
26 | hello | ||
27 | |||
28 | Another usage is starting swtpm from inside QEMU. swtpm will | ||
29 | automatically shut down once it looses the connection to the parent | ||
30 | QEMU, so there is no risk of lingering processes: | ||
31 | |||
32 | -chardev 'socket,id=chrtpm0,cmd=exec swtpm socket --terminate --ctrl type=unixio,,clientfd=0 --tpmstate dir=... --log file=swtpm.log' \ | ||
33 | -tpmdev emulator,id=tpm0,chardev=chrtpm0 \ | ||
34 | -device tpm-tis,tpmdev=tpm0 | ||
35 | |||
36 | The patch was discussed upstream, but QEMU developers believe that the | ||
37 | code calling QEMU should be responsible for managing additional | ||
38 | processes. In OE-core, that would imply enhancing runqemu and | ||
39 | oeqa. This patch is a simpler solution. | ||
40 | |||
41 | Because it is not going upstream, the patch was written so that it is | ||
42 | as simple as possible. | ||
43 | |||
44 | Upstream-Status: Inappropriate [embedded specific] | ||
45 | |||
46 | Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> | ||
47 | |||
48 | --- | ||
49 | chardev/char-socket.c | 100 ++++++++++++++++++++++++++++++++++++++++++ | ||
50 | chardev/char.c | 3 ++ | ||
51 | qapi/char.json | 5 +++ | ||
52 | 3 files changed, 108 insertions(+) | ||
53 | |||
54 | diff --git a/chardev/char-socket.c b/chardev/char-socket.c | ||
55 | index fab2d791d..c79641f24 100644 | ||
56 | --- a/chardev/char-socket.c | ||
57 | +++ b/chardev/char-socket.c | ||
58 | @@ -1315,6 +1315,67 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock, | ||
59 | return true; | ||
60 | } | ||
61 | |||
62 | +#ifndef _WIN32 | ||
63 | +static void chardev_open_socket_cmd(Chardev *chr, | ||
64 | + const char *cmd, | ||
65 | + Error **errp) | ||
66 | +{ | ||
67 | + int fds[2] = { -1, -1 }; | ||
68 | + QIOChannelSocket *sioc = NULL; | ||
69 | + pid_t pid = -1; | ||
70 | + const char *argv[] = { "/bin/sh", "-c", cmd, NULL }; | ||
71 | + | ||
72 | + /* | ||
73 | + * We need a Unix domain socket for commands like swtpm and a single | ||
74 | + * connection, therefore we cannot use qio_channel_command_new_spawn() | ||
75 | + * without patching it first. Duplicating the functionality is easier. | ||
76 | + */ | ||
77 | + if (socketpair(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0, fds)) { | ||
78 | + error_setg_errno(errp, errno, "Error creating socketpair(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC)"); | ||
79 | + goto error; | ||
80 | + } | ||
81 | + | ||
82 | + pid = qemu_fork(errp); | ||
83 | + if (pid < 0) { | ||
84 | + goto error; | ||
85 | + } | ||
86 | + | ||
87 | + if (!pid) { | ||
88 | + /* child */ | ||
89 | + dup2(fds[1], STDIN_FILENO); | ||
90 | + execv(argv[0], (char * const *)argv); | ||
91 | + _exit(1); | ||
92 | + } | ||
93 | + | ||
94 | + /* | ||
95 | + * Hand over our end of the socket pair to the qio channel. | ||
96 | + * | ||
97 | + * We don't reap the child because it is expected to keep | ||
98 | + * running. We also don't support the "reconnect" option for the | ||
99 | + * same reason. | ||
100 | + */ | ||
101 | + sioc = qio_channel_socket_new_fd(fds[0], errp); | ||
102 | + if (!sioc) { | ||
103 | + goto error; | ||
104 | + } | ||
105 | + fds[0] = -1; | ||
106 | + | ||
107 | + g_free(chr->filename); | ||
108 | + chr->filename = g_strdup_printf("cmd:%s", cmd); | ||
109 | + tcp_chr_new_client(chr, sioc); | ||
110 | + | ||
111 | + error: | ||
112 | + if (fds[0] >= 0) { | ||
113 | + close(fds[0]); | ||
114 | + } | ||
115 | + if (fds[1] >= 0) { | ||
116 | + close(fds[1]); | ||
117 | + } | ||
118 | + if (sioc) { | ||
119 | + object_unref(OBJECT(sioc)); | ||
120 | + } | ||
121 | +} | ||
122 | +#endif | ||
123 | |||
124 | static void qmp_chardev_open_socket(Chardev *chr, | ||
125 | ChardevBackend *backend, | ||
126 | @@ -1323,6 +1384,9 @@ static void qmp_chardev_open_socket(Chardev *chr, | ||
127 | { | ||
128 | SocketChardev *s = SOCKET_CHARDEV(chr); | ||
129 | ChardevSocket *sock = backend->u.socket.data; | ||
130 | +#ifndef _WIN32 | ||
131 | + const char *cmd = sock->cmd; | ||
132 | +#endif | ||
133 | bool do_nodelay = sock->has_nodelay ? sock->nodelay : false; | ||
134 | bool is_listen = sock->has_server ? sock->server : true; | ||
135 | bool is_telnet = sock->has_telnet ? sock->telnet : false; | ||
136 | @@ -1393,6 +1457,14 @@ static void qmp_chardev_open_socket(Chardev *chr, | ||
137 | |||
138 | update_disconnected_filename(s); | ||
139 | |||
140 | +#ifndef _WIN32 | ||
141 | + if (cmd) { | ||
142 | + chardev_open_socket_cmd(chr, cmd, errp); | ||
143 | + | ||
144 | + /* everything ready (or failed permanently) before we return */ | ||
145 | + *be_opened = true; | ||
146 | + } else | ||
147 | +#endif | ||
148 | if (s->is_listen) { | ||
149 | if (qmp_chardev_open_socket_server(chr, is_telnet || is_tn3270, | ||
150 | is_waitconnect, errp) < 0) { | ||
151 | @@ -1412,6 +1484,9 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend, | ||
152 | const char *host = qemu_opt_get(opts, "host"); | ||
153 | const char *port = qemu_opt_get(opts, "port"); | ||
154 | const char *fd = qemu_opt_get(opts, "fd"); | ||
155 | +#ifndef _WIN32 | ||
156 | + const char *cmd = qemu_opt_get(opts, "cmd"); | ||
157 | +#endif | ||
158 | #ifdef CONFIG_LINUX | ||
159 | bool tight = qemu_opt_get_bool(opts, "tight", true); | ||
160 | bool abstract = qemu_opt_get_bool(opts, "abstract", false); | ||
161 | @@ -1419,6 +1494,20 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend, | ||
162 | SocketAddressLegacy *addr; | ||
163 | ChardevSocket *sock; | ||
164 | |||
165 | +#ifndef _WIN32 | ||
166 | + if (cmd) { | ||
167 | + /* | ||
168 | + * Here we have to ensure that no options are set which are incompatible with | ||
169 | + * spawning a command, otherwise unmodified code that doesn't know about | ||
170 | + * command spawning (like socket_reconnect_timeout()) might get called. | ||
171 | + */ | ||
172 | + if (path || sock->server || sock->has_telnet || sock->has_tn3270 || sock->reconnect || host || port || sock->tls_creds) { | ||
173 | + error_setg(errp, "chardev: socket: cmd does not support any additional options"); | ||
174 | + return; | ||
175 | + } | ||
176 | + } else | ||
177 | +#endif | ||
178 | + | ||
179 | if ((!!path + !!fd + !!host) > 1) { | ||
180 | error_setg(errp, | ||
181 | "None or one of 'path', 'fd' or 'host' option required."); | ||
182 | @@ -1469,13 +1558,24 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend, | ||
183 | sock->tls_creds = g_strdup(qemu_opt_get(opts, "tls-creds")); | ||
184 | sock->has_tls_authz = qemu_opt_get(opts, "tls-authz"); | ||
185 | sock->tls_authz = g_strdup(qemu_opt_get(opts, "tls-authz")); | ||
186 | +#ifndef _WIN32 | ||
187 | + sock->cmd = g_strdup(cmd); | ||
188 | +#endif | ||
189 | |||
190 | addr = g_new0(SocketAddressLegacy, 1); | ||
191 | +#ifndef _WIN32 | ||
192 | + if (path || cmd) { | ||
193 | +#else | ||
194 | if (path) { | ||
195 | +#endif | ||
196 | UnixSocketAddress *q_unix; | ||
197 | addr->type = SOCKET_ADDRESS_TYPE_UNIX; | ||
198 | q_unix = addr->u.q_unix.data = g_new0(UnixSocketAddress, 1); | ||
199 | +#ifndef _WIN32 | ||
200 | + q_unix->path = cmd ? g_strdup_printf("cmd:%s", cmd) : g_strdup(path); | ||
201 | +#else | ||
202 | q_unix->path = g_strdup(path); | ||
203 | +#endif | ||
204 | #ifdef CONFIG_LINUX | ||
205 | q_unix->has_tight = true; | ||
206 | q_unix->tight = tight; | ||
207 | diff --git a/chardev/char.c b/chardev/char.c | ||
208 | index 0169d8dde..ce9a21f41 100644 | ||
209 | --- a/chardev/char.c | ||
210 | +++ b/chardev/char.c | ||
211 | @@ -835,6 +835,9 @@ QemuOptsList qemu_chardev_opts = { | ||
212 | },{ | ||
213 | .name = "path", | ||
214 | .type = QEMU_OPT_STRING, | ||
215 | + },{ | ||
216 | + .name = "cmd", | ||
217 | + .type = QEMU_OPT_STRING, | ||
218 | },{ | ||
219 | .name = "host", | ||
220 | .type = QEMU_OPT_STRING, | ||
221 | diff --git a/qapi/char.json b/qapi/char.json | ||
222 | index 7b4215157..37feabdac 100644 | ||
223 | --- a/qapi/char.json | ||
224 | +++ b/qapi/char.json | ||
225 | @@ -250,6 +250,10 @@ | ||
226 | # | ||
227 | # @addr: socket address to listen on (server=true) | ||
228 | # or connect to (server=false) | ||
229 | +# @cmd: command to run via "sh -c" with stdin as one end of | ||
230 | +# a AF_UNIX SOCK_DSTREAM socket pair. The other end | ||
231 | +# is used by the chardev. Either an addr or a cmd can | ||
232 | +# be specified, but not both. | ||
233 | # @tls-creds: the ID of the TLS credentials object (since 2.6) | ||
234 | # @tls-authz: the ID of the QAuthZ authorization object against which | ||
235 | # the client's x509 distinguished name will be validated. This | ||
236 | @@ -276,6 +280,7 @@ | ||
237 | ## | ||
238 | { 'struct': 'ChardevSocket', | ||
239 | 'data': { 'addr': 'SocketAddressLegacy', | ||
240 | + '*cmd': 'str', | ||
241 | '*tls-creds': 'str', | ||
242 | '*tls-authz' : 'str', | ||
243 | '*server': 'bool', | ||
244 | -- | ||
245 | 2.30.2 | ||
246 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch b/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch index 14b5338eb2..ceae67be64 100644 --- a/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch +++ b/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch | |||
@@ -16,11 +16,11 @@ Cc: Laurent Vivier <laurent@vivier.eu> | |||
16 | linux-user/syscall.c | 153 +++++++++++-------------------------------- | 16 | linux-user/syscall.c | 153 +++++++++++-------------------------------- |
17 | 1 file changed, 39 insertions(+), 114 deletions(-) | 17 | 1 file changed, 39 insertions(+), 114 deletions(-) |
18 | 18 | ||
19 | diff --git a/linux-user/syscall.c b/linux-user/syscall.c | 19 | Index: qemu-8.0.0/linux-user/syscall.c |
20 | index 1f8c10f8ef..30d83ed162 100644 | 20 | =================================================================== |
21 | --- a/linux-user/syscall.c | 21 | --- qemu-8.0.0.orig/linux-user/syscall.c |
22 | +++ b/linux-user/syscall.c | 22 | +++ qemu-8.0.0/linux-user/syscall.c |
23 | @@ -795,8 +795,8 @@ safe_syscall6(ssize_t, copy_file_range, int, infd, loff_t *, pinoff, | 23 | @@ -761,8 +761,8 @@ safe_syscall6(ssize_t, copy_file_range, |
24 | */ | 24 | */ |
25 | #define safe_ioctl(...) safe_syscall(__NR_ioctl, __VA_ARGS__) | 25 | #define safe_ioctl(...) safe_syscall(__NR_ioctl, __VA_ARGS__) |
26 | /* Similarly for fcntl. Note that callers must always: | 26 | /* Similarly for fcntl. Note that callers must always: |
@@ -31,7 +31,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
31 | * This will then work and use a 64-bit offset for both 32-bit and 64-bit hosts. | 31 | * This will then work and use a 64-bit offset for both 32-bit and 64-bit hosts. |
32 | */ | 32 | */ |
33 | #ifdef __NR_fcntl64 | 33 | #ifdef __NR_fcntl64 |
34 | @@ -6797,13 +6797,13 @@ static int target_to_host_fcntl_cmd(int cmd) | 34 | @@ -6813,13 +6813,13 @@ static int target_to_host_fcntl_cmd(int |
35 | ret = cmd; | 35 | ret = cmd; |
36 | break; | 36 | break; |
37 | case TARGET_F_GETLK: | 37 | case TARGET_F_GETLK: |
@@ -48,7 +48,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
48 | break; | 48 | break; |
49 | case TARGET_F_GETOWN: | 49 | case TARGET_F_GETOWN: |
50 | ret = F_GETOWN; | 50 | ret = F_GETOWN; |
51 | @@ -6817,17 +6817,6 @@ static int target_to_host_fcntl_cmd(int cmd) | 51 | @@ -6833,17 +6833,6 @@ static int target_to_host_fcntl_cmd(int |
52 | case TARGET_F_SETSIG: | 52 | case TARGET_F_SETSIG: |
53 | ret = F_SETSIG; | 53 | ret = F_SETSIG; |
54 | break; | 54 | break; |
@@ -66,7 +66,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
66 | case TARGET_F_SETLEASE: | 66 | case TARGET_F_SETLEASE: |
67 | ret = F_SETLEASE; | 67 | ret = F_SETLEASE; |
68 | break; | 68 | break; |
69 | @@ -6879,8 +6868,8 @@ static int target_to_host_fcntl_cmd(int cmd) | 69 | @@ -6895,8 +6884,8 @@ static int target_to_host_fcntl_cmd(int |
70 | * them to 5, 6 and 7 before making the syscall(). Since we make the | 70 | * them to 5, 6 and 7 before making the syscall(). Since we make the |
71 | * syscall directly, adjust to what is supported by the kernel. | 71 | * syscall directly, adjust to what is supported by the kernel. |
72 | */ | 72 | */ |
@@ -77,7 +77,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
77 | } | 77 | } |
78 | #endif | 78 | #endif |
79 | 79 | ||
80 | @@ -6913,55 +6902,11 @@ static int host_to_target_flock(int type) | 80 | @@ -6929,55 +6918,11 @@ static int host_to_target_flock(int type |
81 | return type; | 81 | return type; |
82 | } | 82 | } |
83 | 83 | ||
@@ -136,7 +136,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
136 | abi_short l_type; | 136 | abi_short l_type; |
137 | abi_short l_whence; | 137 | abi_short l_whence; |
138 | abi_llong l_start; | 138 | abi_llong l_start; |
139 | @@ -6969,10 +6914,10 @@ struct target_oabi_flock64 { | 139 | @@ -6985,10 +6930,10 @@ struct target_oabi_flock64 { |
140 | abi_int l_pid; | 140 | abi_int l_pid; |
141 | } QEMU_PACKED; | 141 | } QEMU_PACKED; |
142 | 142 | ||
@@ -149,7 +149,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
149 | int l_type; | 149 | int l_type; |
150 | 150 | ||
151 | if (!lock_user_struct(VERIFY_READ, target_fl, target_flock_addr, 1)) { | 151 | if (!lock_user_struct(VERIFY_READ, target_fl, target_flock_addr, 1)) { |
152 | @@ -6993,10 +6938,10 @@ static inline abi_long copy_from_user_oabi_flock64(struct flock64 *fl, | 152 | @@ -7009,10 +6954,10 @@ static inline abi_long copy_from_user_oa |
153 | return 0; | 153 | return 0; |
154 | } | 154 | } |
155 | 155 | ||
@@ -163,7 +163,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
163 | short l_type; | 163 | short l_type; |
164 | 164 | ||
165 | if (!lock_user_struct(VERIFY_WRITE, target_fl, target_flock_addr, 0)) { | 165 | if (!lock_user_struct(VERIFY_WRITE, target_fl, target_flock_addr, 0)) { |
166 | @@ -7014,10 +6959,10 @@ static inline abi_long copy_to_user_oabi_flock64(abi_ulong target_flock_addr, | 166 | @@ -7030,10 +6975,10 @@ static inline abi_long copy_to_user_oabi |
167 | } | 167 | } |
168 | #endif | 168 | #endif |
169 | 169 | ||
@@ -176,7 +176,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
176 | int l_type; | 176 | int l_type; |
177 | 177 | ||
178 | if (!lock_user_struct(VERIFY_READ, target_fl, target_flock_addr, 1)) { | 178 | if (!lock_user_struct(VERIFY_READ, target_fl, target_flock_addr, 1)) { |
179 | @@ -7038,10 +6983,10 @@ static inline abi_long copy_from_user_flock64(struct flock64 *fl, | 179 | @@ -7054,10 +6999,10 @@ static inline abi_long copy_from_user_fl |
180 | return 0; | 180 | return 0; |
181 | } | 181 | } |
182 | 182 | ||
@@ -190,7 +190,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
190 | short l_type; | 190 | short l_type; |
191 | 191 | ||
192 | if (!lock_user_struct(VERIFY_WRITE, target_fl, target_flock_addr, 0)) { | 192 | if (!lock_user_struct(VERIFY_WRITE, target_fl, target_flock_addr, 0)) { |
193 | @@ -7060,7 +7005,7 @@ static inline abi_long copy_to_user_flock64(abi_ulong target_flock_addr, | 193 | @@ -7076,7 +7021,7 @@ static inline abi_long copy_to_user_floc |
194 | 194 | ||
195 | static abi_long do_fcntl(int fd, int cmd, abi_ulong arg) | 195 | static abi_long do_fcntl(int fd, int cmd, abi_ulong arg) |
196 | { | 196 | { |
@@ -199,7 +199,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
199 | #ifdef F_GETOWN_EX | 199 | #ifdef F_GETOWN_EX |
200 | struct f_owner_ex fox; | 200 | struct f_owner_ex fox; |
201 | struct target_f_owner_ex *target_fox; | 201 | struct target_f_owner_ex *target_fox; |
202 | @@ -7073,6 +7018,7 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg) | 202 | @@ -7089,6 +7034,7 @@ static abi_long do_fcntl(int fd, int cmd |
203 | 203 | ||
204 | switch(cmd) { | 204 | switch(cmd) { |
205 | case TARGET_F_GETLK: | 205 | case TARGET_F_GETLK: |
@@ -207,7 +207,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
207 | ret = copy_from_user_flock(&fl64, arg); | 207 | ret = copy_from_user_flock(&fl64, arg); |
208 | if (ret) { | 208 | if (ret) { |
209 | return ret; | 209 | return ret; |
210 | @@ -7082,32 +7028,11 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg) | 210 | @@ -7098,32 +7044,11 @@ static abi_long do_fcntl(int fd, int cmd |
211 | ret = copy_to_user_flock(arg, &fl64); | 211 | ret = copy_to_user_flock(arg, &fl64); |
212 | } | 212 | } |
213 | break; | 213 | break; |
@@ -241,7 +241,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
241 | if (ret) { | 241 | if (ret) { |
242 | return ret; | 242 | return ret; |
243 | } | 243 | } |
244 | @@ -7332,7 +7257,7 @@ static inline abi_long target_truncate64(CPUArchState *cpu_env, const char *arg1 | 244 | @@ -7348,7 +7273,7 @@ static inline abi_long target_truncate64 |
245 | arg2 = arg3; | 245 | arg2 = arg3; |
246 | arg3 = arg4; | 246 | arg3 = arg4; |
247 | } | 247 | } |
@@ -250,7 +250,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
250 | } | 250 | } |
251 | #endif | 251 | #endif |
252 | 252 | ||
253 | @@ -7346,7 +7271,7 @@ static inline abi_long target_ftruncate64(CPUArchState *cpu_env, abi_long arg1, | 253 | @@ -7362,7 +7287,7 @@ static inline abi_long target_ftruncate6 |
254 | arg2 = arg3; | 254 | arg2 = arg3; |
255 | arg3 = arg4; | 255 | arg3 = arg4; |
256 | } | 256 | } |
@@ -259,7 +259,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
259 | } | 259 | } |
260 | #endif | 260 | #endif |
261 | 261 | ||
262 | @@ -8452,7 +8377,7 @@ static int do_getdents(abi_long dirfd, abi_long arg2, abi_long count) | 262 | @@ -8598,7 +8523,7 @@ static int do_getdents(abi_long dirfd, a |
263 | void *tdirp; | 263 | void *tdirp; |
264 | int hlen, hoff, toff; | 264 | int hlen, hoff, toff; |
265 | int hreclen, treclen; | 265 | int hreclen, treclen; |
@@ -268,7 +268,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
268 | 268 | ||
269 | hdirp = g_try_malloc(count); | 269 | hdirp = g_try_malloc(count); |
270 | if (!hdirp) { | 270 | if (!hdirp) { |
271 | @@ -8505,7 +8430,7 @@ static int do_getdents(abi_long dirfd, abi_long arg2, abi_long count) | 271 | @@ -8651,7 +8576,7 @@ static int do_getdents(abi_long dirfd, a |
272 | * Return what we have, resetting the file pointer to the | 272 | * Return what we have, resetting the file pointer to the |
273 | * location of the first record not returned. | 273 | * location of the first record not returned. |
274 | */ | 274 | */ |
@@ -277,7 +277,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
277 | break; | 277 | break; |
278 | } | 278 | } |
279 | 279 | ||
280 | @@ -8539,7 +8464,7 @@ static int do_getdents64(abi_long dirfd, abi_long arg2, abi_long count) | 280 | @@ -8685,7 +8610,7 @@ static int do_getdents64(abi_long dirfd, |
281 | void *tdirp; | 281 | void *tdirp; |
282 | int hlen, hoff, toff; | 282 | int hlen, hoff, toff; |
283 | int hreclen, treclen; | 283 | int hreclen, treclen; |
@@ -286,7 +286,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
286 | 286 | ||
287 | hdirp = g_try_malloc(count); | 287 | hdirp = g_try_malloc(count); |
288 | if (!hdirp) { | 288 | if (!hdirp) { |
289 | @@ -8581,7 +8506,7 @@ static int do_getdents64(abi_long dirfd, abi_long arg2, abi_long count) | 289 | @@ -8727,7 +8652,7 @@ static int do_getdents64(abi_long dirfd, |
290 | * Return what we have, resetting the file pointer to the | 290 | * Return what we have, resetting the file pointer to the |
291 | * location of the first record not returned. | 291 | * location of the first record not returned. |
292 | */ | 292 | */ |
@@ -295,7 +295,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
295 | break; | 295 | break; |
296 | } | 296 | } |
297 | 297 | ||
298 | @@ -11114,7 +11039,7 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1, | 298 | @@ -11158,7 +11083,7 @@ static abi_long do_syscall1(CPUArchState |
299 | return -TARGET_EFAULT; | 299 | return -TARGET_EFAULT; |
300 | } | 300 | } |
301 | } | 301 | } |
@@ -304,7 +304,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
304 | unlock_user(p, arg2, ret); | 304 | unlock_user(p, arg2, ret); |
305 | return ret; | 305 | return ret; |
306 | case TARGET_NR_pwrite64: | 306 | case TARGET_NR_pwrite64: |
307 | @@ -11131,7 +11056,7 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1, | 307 | @@ -11175,7 +11100,7 @@ static abi_long do_syscall1(CPUArchState |
308 | return -TARGET_EFAULT; | 308 | return -TARGET_EFAULT; |
309 | } | 309 | } |
310 | } | 310 | } |
@@ -313,7 +313,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
313 | unlock_user(p, arg2, 0); | 313 | unlock_user(p, arg2, 0); |
314 | return ret; | 314 | return ret; |
315 | #endif | 315 | #endif |
316 | @@ -11954,14 +11879,14 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1, | 316 | @@ -11998,14 +11923,14 @@ static abi_long do_syscall1(CPUArchState |
317 | case TARGET_NR_fcntl64: | 317 | case TARGET_NR_fcntl64: |
318 | { | 318 | { |
319 | int cmd; | 319 | int cmd; |
@@ -333,7 +333,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
333 | } | 333 | } |
334 | #endif | 334 | #endif |
335 | 335 | ||
336 | @@ -11971,7 +11896,7 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1, | 336 | @@ -12015,7 +11940,7 @@ static abi_long do_syscall1(CPUArchState |
337 | } | 337 | } |
338 | 338 | ||
339 | switch(arg2) { | 339 | switch(arg2) { |
@@ -342,7 +342,7 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
342 | ret = copyfrom(&fl, arg3); | 342 | ret = copyfrom(&fl, arg3); |
343 | if (ret) { | 343 | if (ret) { |
344 | break; | 344 | break; |
345 | @@ -11982,8 +11907,8 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1, | 345 | @@ -12026,8 +11951,8 @@ static abi_long do_syscall1(CPUArchState |
346 | } | 346 | } |
347 | break; | 347 | break; |
348 | 348 | ||
@@ -353,6 +353,3 @@ index 1f8c10f8ef..30d83ed162 100644 | |||
353 | ret = copyfrom(&fl, arg3); | 353 | ret = copyfrom(&fl, arg3); |
354 | if (ret) { | 354 | if (ret) { |
355 | break; | 355 | break; |
356 | -- | ||
357 | 2.39.0 | ||
358 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch b/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch index f350ffce47..e85f8202e9 100644 --- a/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch +++ b/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch | |||
@@ -29,11 +29,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com> | |||
29 | hw/intc/apic.c | 2 +- | 29 | hw/intc/apic.c | 2 +- |
30 | 1 file changed, 1 insertion(+), 1 deletion(-) | 30 | 1 file changed, 1 insertion(+), 1 deletion(-) |
31 | 31 | ||
32 | diff --git a/hw/intc/apic.c b/hw/intc/apic.c | 32 | Index: qemu-8.0.0/hw/intc/apic.c |
33 | index 3df11c34d..9506c88ce 100644 | 33 | =================================================================== |
34 | --- a/hw/intc/apic.c | 34 | --- qemu-8.0.0.orig/hw/intc/apic.c |
35 | +++ b/hw/intc/apic.c | 35 | +++ qemu-8.0.0/hw/intc/apic.c |
36 | @@ -605,7 +605,7 @@ int apic_accept_pic_intr(DeviceState *dev) | 36 | @@ -607,7 +607,7 @@ int apic_accept_pic_intr(DeviceState *de |
37 | APICCommonState *s = APIC(dev); | 37 | APICCommonState *s = APIC(dev); |
38 | uint32_t lvt0; | 38 | uint32_t lvt0; |
39 | 39 | ||
@@ -42,6 +42,3 @@ index 3df11c34d..9506c88ce 100644 | |||
42 | return -1; | 42 | return -1; |
43 | 43 | ||
44 | lvt0 = s->lvt[APIC_LVT_LINT0]; | 44 | lvt0 = s->lvt[APIC_LVT_LINT0]; |
45 | -- | ||
46 | 2.30.2 | ||
47 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch b/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch index 6faebd4e09..02f22143c1 100644 --- a/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch +++ b/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch | |||
@@ -14,11 +14,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com> | |||
14 | meson.build | 2 +- | 14 | meson.build | 2 +- |
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | 15 | 1 file changed, 1 insertion(+), 1 deletion(-) |
16 | 16 | ||
17 | diff --git a/meson.build b/meson.build | 17 | Index: qemu-8.0.0/meson.build |
18 | index 861de93c4..d45ff2d7c 100644 | 18 | =================================================================== |
19 | --- a/meson.build | 19 | --- qemu-8.0.0.orig/meson.build |
20 | +++ b/meson.build | 20 | +++ qemu-8.0.0/meson.build |
21 | @@ -1063,7 +1063,7 @@ endif | 21 | @@ -1213,7 +1213,7 @@ endif |
22 | if not gnutls_crypto.found() | 22 | if not gnutls_crypto.found() |
23 | if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled() | 23 | if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled() |
24 | gcrypt = dependency('libgcrypt', version: '>=1.8', | 24 | gcrypt = dependency('libgcrypt', version: '>=1.8', |
@@ -27,6 +27,3 @@ index 861de93c4..d45ff2d7c 100644 | |||
27 | required: get_option('gcrypt'), | 27 | required: get_option('gcrypt'), |
28 | kwargs: static_kwargs) | 28 | kwargs: static_kwargs) |
29 | # Debian has removed -lgpg-error from libgcrypt-config | 29 | # Debian has removed -lgpg-error from libgcrypt-config |
30 | -- | ||
31 | 2.30.2 | ||
32 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch b/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch index 3f3c39f996..38aa4c3bbe 100644 --- a/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch +++ b/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch | |||
@@ -16,11 +16,11 @@ Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com> | |||
16 | linux-user/syscall.c | 2 ++ | 16 | linux-user/syscall.c | 2 ++ |
17 | 1 file changed, 2 insertions(+) | 17 | 1 file changed, 2 insertions(+) |
18 | 18 | ||
19 | diff --git a/linux-user/syscall.c b/linux-user/syscall.c | 19 | Index: qemu-8.0.0/linux-user/syscall.c |
20 | index f65045efe..340e0c6f0 100644 | 20 | =================================================================== |
21 | --- a/linux-user/syscall.c | 21 | --- qemu-8.0.0.orig/linux-user/syscall.c |
22 | +++ b/linux-user/syscall.c | 22 | +++ qemu-8.0.0/linux-user/syscall.c |
23 | @@ -113,7 +113,9 @@ | 23 | @@ -115,7 +115,9 @@ |
24 | #include <linux/blkpg.h> | 24 | #include <linux/blkpg.h> |
25 | #include <netpacket/packet.h> | 25 | #include <netpacket/packet.h> |
26 | #include <linux/netlink.h> | 26 | #include <linux/netlink.h> |
@@ -30,6 +30,3 @@ index f65045efe..340e0c6f0 100644 | |||
30 | #include <linux/rtc.h> | 30 | #include <linux/rtc.h> |
31 | #include <sound/asound.h> | 31 | #include <sound/asound.h> |
32 | #ifdef HAVE_BTRFS_H | 32 | #ifdef HAVE_BTRFS_H |
33 | -- | ||
34 | 2.30.2 | ||
35 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch b/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch index 75c0369318..5d1d7c6881 100644 --- a/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch +++ b/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch | |||
@@ -23,11 +23,11 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org | |||
23 | linux-user/mmap.c | 10 +++++++--- | 23 | linux-user/mmap.c | 10 +++++++--- |
24 | 1 file changed, 7 insertions(+), 3 deletions(-) | 24 | 1 file changed, 7 insertions(+), 3 deletions(-) |
25 | 25 | ||
26 | diff --git a/linux-user/mmap.c b/linux-user/mmap.c | 26 | Index: qemu-8.0.0/linux-user/mmap.c |
27 | index c125031b9..e651834a5 100644 | 27 | =================================================================== |
28 | --- a/linux-user/mmap.c | 28 | --- qemu-8.0.0.orig/linux-user/mmap.c |
29 | +++ b/linux-user/mmap.c | 29 | +++ qemu-8.0.0/linux-user/mmap.c |
30 | @@ -749,12 +749,16 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size, | 30 | @@ -776,12 +776,16 @@ abi_long target_mremap(abi_ulong old_add |
31 | int prot; | 31 | int prot; |
32 | void *host_addr; | 32 | void *host_addr; |
33 | 33 | ||
@@ -47,6 +47,3 @@ index c125031b9..e651834a5 100644 | |||
47 | return -1; | 47 | return -1; |
48 | } | 48 | } |
49 | 49 | ||
50 | -- | ||
51 | 2.30.2 | ||
52 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch b/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch index 0d7dae3689..d3f965e070 100644 --- a/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch +++ b/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch | |||
@@ -16,10 +16,10 @@ RP 2021/3/1 | |||
16 | scripts/decodetree.py | 2 +- | 16 | scripts/decodetree.py | 2 +- |
17 | 1 file changed, 1 insertion(+), 1 deletion(-) | 17 | 1 file changed, 1 insertion(+), 1 deletion(-) |
18 | 18 | ||
19 | diff --git a/scripts/decodetree.py b/scripts/decodetree.py | 19 | Index: qemu-8.0.0/scripts/decodetree.py |
20 | index a03dc6b5e..4ea24c1f3 100644 | 20 | =================================================================== |
21 | --- a/scripts/decodetree.py | 21 | --- qemu-8.0.0.orig/scripts/decodetree.py |
22 | +++ b/scripts/decodetree.py | 22 | +++ qemu-8.0.0/scripts/decodetree.py |
23 | @@ -1328,7 +1328,7 @@ def main(): | 23 | @@ -1328,7 +1328,7 @@ def main(): |
24 | toppat = ExcMultiPattern(0) | 24 | toppat = ExcMultiPattern(0) |
25 | 25 | ||
@@ -29,6 +29,3 @@ index a03dc6b5e..4ea24c1f3 100644 | |||
29 | f = open(filename, 'rt', encoding='utf-8') | 29 | f = open(filename, 'rt', encoding='utf-8') |
30 | parse_file(f, toppat) | 30 | parse_file(f, toppat) |
31 | f.close() | 31 | f.close() |
32 | -- | ||
33 | 2.30.2 | ||
34 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch b/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch index 43d3c7cf1f..a84364ccc1 100644 --- a/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch +++ b/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch | |||
@@ -17,22 +17,25 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com> | |||
17 | tests/unit/meson.build | 4 ++-- | 17 | tests/unit/meson.build | 4 ++-- |
18 | 1 file changed, 2 insertions(+), 2 deletions(-) | 18 | 1 file changed, 2 insertions(+), 2 deletions(-) |
19 | 19 | ||
20 | diff --git a/tests/unit/meson.build b/tests/unit/meson.build | 20 | Index: qemu-8.0.0/tests/unit/meson.build |
21 | index 96b295263..e4c3246dc 100644 | 21 | =================================================================== |
22 | --- a/tests/unit/meson.build | 22 | --- qemu-8.0.0.orig/tests/unit/meson.build |
23 | +++ b/tests/unit/meson.build | 23 | +++ qemu-8.0.0/tests/unit/meson.build |
24 | @@ -44,9 +44,9 @@ tests = { | 24 | @@ -46,7 +46,7 @@ tests = { |
25 | 'test-keyval': [testqapi], | 25 | 'test-keyval': [testqapi], |
26 | 'test-logging': [], | 26 | 'test-logging': [], |
27 | 'test-uuid': [], | 27 | 'test-uuid': [], |
28 | - 'ptimer-test': ['ptimer-test-stubs.c', meson.project_source_root() / 'hw/core/ptimer.c'], | 28 | - 'ptimer-test': ['ptimer-test-stubs.c', meson.project_source_root() / 'hw/core/ptimer.c'], |
29 | + 'ptimer-test': ['ptimer-test-stubs.c', '../../hw/core/ptimer.c'], | 29 | + 'ptimer-test': ['ptimer-test-stubs.c', '../../hw/core/ptimer.c'], |
30 | 'test-qapi-util': [], | 30 | 'test-qapi-util': [], |
31 | - 'test-smp-parse': [qom, meson.project_source_root() / 'hw/core/machine-smp.c'], | 31 | 'test-interval-tree': [], |
32 | + 'test-smp-parse': [qom, '../../hw/core/machine-smp.c'], | 32 | 'test-xs-node': [qom], |
33 | } | 33 | @@ -136,7 +136,7 @@ if have_system |
34 | 34 | 'test-util-sockets': ['socket-helpers.c'], | |
35 | if have_system or have_tools | 35 | 'test-base64': [], |
36 | -- | 36 | 'test-bufferiszero': [], |
37 | 2.30.2 | 37 | - 'test-smp-parse': [qom, meson.project_source_root() / 'hw/core/machine-smp.c'], |
38 | 38 | + 'test-smp-parse': [qom, '../../hw/core/machine-smp.c'], | |
39 | 'test-vmstate': [migration, io], | ||
40 | 'test-yank': ['socket-helpers.c', qom, io, chardev] | ||
41 | } | ||
diff --git a/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch b/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch index 23d0a69802..4de6cc2445 100644 --- a/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch +++ b/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch | |||
@@ -18,10 +18,10 @@ Cc: Michael S. Tsirkin <mst@redhat.com> | |||
18 | util/mmap-alloc.c | 10 +++++++--- | 18 | util/mmap-alloc.c | 10 +++++++--- |
19 | 1 file changed, 7 insertions(+), 3 deletions(-) | 19 | 1 file changed, 7 insertions(+), 3 deletions(-) |
20 | 20 | ||
21 | diff --git a/util/mmap-alloc.c b/util/mmap-alloc.c | 21 | Index: qemu-8.0.0/util/mmap-alloc.c |
22 | index 893d86435..86d3cda24 100644 | 22 | =================================================================== |
23 | --- a/util/mmap-alloc.c | 23 | --- qemu-8.0.0.orig/util/mmap-alloc.c |
24 | +++ b/util/mmap-alloc.c | 24 | +++ qemu-8.0.0/util/mmap-alloc.c |
25 | @@ -10,14 +10,18 @@ | 25 | @@ -10,14 +10,18 @@ |
26 | * later. See the COPYING file in the top-level directory. | 26 | * later. See the COPYING file in the top-level directory. |
27 | */ | 27 | */ |
@@ -44,6 +44,3 @@ index 893d86435..86d3cda24 100644 | |||
44 | #include "qemu/mmap-alloc.h" | 44 | #include "qemu/mmap-alloc.h" |
45 | #include "qemu/host-utils.h" | 45 | #include "qemu/host-utils.h" |
46 | #include "qemu/cutils.h" | 46 | #include "qemu/cutils.h" |
47 | -- | ||
48 | 2.30.2 | ||
49 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch b/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch index 810c74fabd..6caf35b634 100644 --- a/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch +++ b/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch | |||
@@ -21,13 +21,13 @@ Signed-off-by: Yuval Shaia <yuval.shaia.ml@gmail.com> | |||
21 | hw/rdma/vmw/pvrdma_cmd.c | 6 ++++++ | 21 | hw/rdma/vmw/pvrdma_cmd.c | 6 ++++++ |
22 | 1 file changed, 6 insertions(+) | 22 | 1 file changed, 6 insertions(+) |
23 | 23 | ||
24 | diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c | 24 | Index: qemu-8.0.0/hw/rdma/vmw/pvrdma_cmd.c |
25 | index da7ddfa548..89db963c46 100644 | 25 | =================================================================== |
26 | --- a/hw/rdma/vmw/pvrdma_cmd.c | 26 | --- qemu-8.0.0.orig/hw/rdma/vmw/pvrdma_cmd.c |
27 | +++ b/hw/rdma/vmw/pvrdma_cmd.c | 27 | +++ qemu-8.0.0/hw/rdma/vmw/pvrdma_cmd.c |
28 | @@ -796,6 +796,12 @@ int pvrdma_exec_cmd(PVRDMADev *dev) | 28 | @@ -782,6 +782,12 @@ int pvrdma_exec_cmd(PVRDMADev *dev) |
29 | 29 | goto out; | |
30 | dsr_info = &dev->dsr_info; | 30 | } |
31 | 31 | ||
32 | + if (!dsr_info->dsr) { | 32 | + if (!dsr_info->dsr) { |
33 | + /* Buggy or malicious guest driver */ | 33 | + /* Buggy or malicious guest driver */ |
@@ -38,6 +38,3 @@ index da7ddfa548..89db963c46 100644 | |||
38 | if (dsr_info->req->hdr.cmd >= sizeof(cmd_handlers) / | 38 | if (dsr_info->req->hdr.cmd >= sizeof(cmd_handlers) / |
39 | sizeof(struct cmd_handler)) { | 39 | sizeof(struct cmd_handler)) { |
40 | rdma_error_report("Unsupported command"); | 40 | rdma_error_report("Unsupported command"); |
41 | -- | ||
42 | 2.34.1 | ||
43 | |||
diff --git a/meta/recipes-devtools/qemu/qemu/cross.patch b/meta/recipes-devtools/qemu/qemu/cross.patch index ca2ad361ef..112eb92593 100644 --- a/meta/recipes-devtools/qemu/qemu/cross.patch +++ b/meta/recipes-devtools/qemu/qemu/cross.patch | |||
@@ -14,19 +14,19 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | |||
14 | configure | 4 ---- | 14 | configure | 4 ---- |
15 | 1 file changed, 4 deletions(-) | 15 | 1 file changed, 4 deletions(-) |
16 | 16 | ||
17 | Index: qemu-7.1.0/configure | 17 | Index: qemu-8.0.0/configure |
18 | =================================================================== | 18 | =================================================================== |
19 | --- qemu-7.1.0.orig/configure | 19 | --- qemu-8.0.0.orig/configure |
20 | +++ qemu-7.1.0/configure | 20 | +++ qemu-8.0.0/configure |
21 | @@ -2710,7 +2710,6 @@ if test "$skip_meson" = no; then | 21 | @@ -2590,7 +2590,6 @@ if test "$skip_meson" = no; then |
22 | echo "strip = [$(meson_quote $strip)]" >> $cross | ||
23 | echo "widl = [$(meson_quote $widl)]" >> $cross | 22 | echo "widl = [$(meson_quote $widl)]" >> $cross |
24 | echo "windres = [$(meson_quote $windres)]" >> $cross | 23 | echo "windres = [$(meson_quote $windres)]" >> $cross |
24 | echo "windmc = [$(meson_quote $windmc)]" >> $cross | ||
25 | - if test "$cross_compile" = "yes"; then | 25 | - if test "$cross_compile" = "yes"; then |
26 | cross_arg="--cross-file config-meson.cross" | 26 | cross_arg="--cross-file config-meson.cross" |
27 | echo "[host_machine]" >> $cross | 27 | echo "[host_machine]" >> $cross |
28 | echo "system = '$targetos'" >> $cross | 28 | echo "system = '$targetos'" >> $cross |
29 | @@ -2728,9 +2727,6 @@ if test "$skip_meson" = no; then | 29 | @@ -2608,9 +2607,6 @@ if test "$skip_meson" = no; then |
30 | else | 30 | else |
31 | echo "endian = 'little'" >> $cross | 31 | echo "endian = 'little'" >> $cross |
32 | fi | 32 | fi |
diff --git a/meta/recipes-devtools/qemu/qemu_7.2.0.bb b/meta/recipes-devtools/qemu/qemu_8.0.0.bb index 42e133967e..42e133967e 100644 --- a/meta/recipes-devtools/qemu/qemu_7.2.0.bb +++ b/meta/recipes-devtools/qemu/qemu_8.0.0.bb | |||