diff options
author | Khem Raj <raj.khem@gmail.com> | 2021-06-14 12:19:18 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-06-17 00:02:49 +0100 |
commit | 2a2ba9ec4ca1aeb4a1d5336bb18ab76253c87bc0 (patch) | |
tree | b4fcd0b8c8e17bc5c3d0eae0c36f56c8e5aeae6e /meta/recipes-devtools | |
parent | ab8b8153469a038b09b6ff24be41f5942dca60ab (diff) | |
download | openembedded-core-contrib-2a2ba9ec4ca1aeb4a1d5336bb18ab76253c87bc0.tar.gz |
qemu: Provide float128 via hwcaps2 on ppc64le
Fixes runtime problems with qemu-user
Fatal glibc error: CPU lacks float128 support (POWER 9 or later required)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rw-r--r-- | meta/recipes-devtools/qemu/qemu.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/qemu/qemu/0001-linux-user-Tag-vsx-with-ieee128-fpbits.patch | 35 |
2 files changed, 36 insertions, 0 deletions
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc index aa7cf74dd3..6674936fef 100644 --- a/meta/recipes-devtools/qemu/qemu.inc +++ b/meta/recipes-devtools/qemu/qemu.inc @@ -36,6 +36,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://0005-vhost-user-gpu-fix-memory-leak-in-virgl_cmd_resource.patch \ file://0006-vhost-user-gpu-fix-memory-leak-in-virgl_resource_att.patch \ file://0007-vhost-user-gpu-fix-OOB-write-in-virgl_cmd_get_capset.patch \ + file://0001-linux-user-Tag-vsx-with-ieee128-fpbits.patch \ " UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar" diff --git a/meta/recipes-devtools/qemu/qemu/0001-linux-user-Tag-vsx-with-ieee128-fpbits.patch b/meta/recipes-devtools/qemu/qemu/0001-linux-user-Tag-vsx-with-ieee128-fpbits.patch new file mode 100644 index 0000000000..11b6e3c678 --- /dev/null +++ b/meta/recipes-devtools/qemu/qemu/0001-linux-user-Tag-vsx-with-ieee128-fpbits.patch @@ -0,0 +1,35 @@ +From c5844a4cdee37268c9b65a65e6968ee129bb742d Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 14 Jun 2021 10:27:17 -0700 +Subject: [PATCH] linux-user: Tag vsx with ieee128 fpbits + +In OE we need this for ppc64le usermode to work since we generate 128bit +long doubles and glibc 2.34 is now checking for this in hwcaps at +runtime and failing to run the binary if machine does not support 128bit +IEEE fp + +Fixes +Fatal glibc error: CPU lacks float128 support (POWER 9 or later required) + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + linux-user/elfload.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/linux-user/elfload.c b/linux-user/elfload.c +index 17ab06f612..e7dd18fd40 100644 +--- a/linux-user/elfload.c ++++ b/linux-user/elfload.c +@@ -830,7 +830,7 @@ static uint32_t get_elf_hwcap2(void) + PPC2_ISA207S), QEMU_PPC_FEATURE2_ARCH_2_07 | + QEMU_PPC_FEATURE2_VEC_CRYPTO); + GET_FEATURE2(PPC2_ISA300, QEMU_PPC_FEATURE2_ARCH_3_00 | +- QEMU_PPC_FEATURE2_DARN); ++ QEMU_PPC_FEATURE2_DARN | QEMU_PPC_FEATURE2_HAS_IEEE128); + + #undef GET_FEATURE + #undef GET_FEATURE2 +-- +2.32.0 + |