blob: d20f04ee590e44dd3736d9b73a77d6c63895afdb [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001From cf8c9aac5243f506a1a3e8e284414f311cde04f5 Mon Sep 17 00:00:00 2001
Brad Bishopc342db32019-05-15 21:57:59 -04002From: Alistair Francis <alistair.francis@xilinx.com>
3Date: Wed, 17 Jan 2018 10:51:49 -0800
4Subject: [PATCH] linux-user: Fix webkitgtk hangs on 32-bit x86 target
5
6Since commit "linux-user: Tidy and enforce reserved_va initialization"
7(18e80c55bb6ec17c05ec0ba717ec83933c2bfc07) the Yocto webkitgtk build
8hangs when cross compiling for 32-bit x86 on a 64-bit x86 machine using
9musl.
10
11To fix the issue reduce the MAX_RESERVED_VA macro to be a closer match
12to what it was before the problematic commit.
13
14Upstream-Status: Submitted http://lists.gnu.org/archive/html/qemu-devel/2018-01/msg04185.html
15Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
16
17---
18 linux-user/main.c | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
Andrew Geissler635e0e42020-08-21 15:58:33 -050021Index: qemu-5.1.0/linux-user/main.c
22===================================================================
23--- qemu-5.1.0.orig/linux-user/main.c
24+++ qemu-5.1.0/linux-user/main.c
25@@ -92,7 +92,7 @@ static int last_log_mask;
Brad Bishopc342db32019-05-15 21:57:59 -040026 (TARGET_LONG_BITS == 32 || defined(TARGET_ABI32))
27 /* There are a number of places where we assign reserved_va to a variable
28 of type abi_ulong and expect it to fit. Avoid the last page. */
Andrew Geissler82c905d2020-04-13 13:39:40 -050029-# define MAX_RESERVED_VA(CPU) (0xfffffffful & TARGET_PAGE_MASK)
30+# define MAX_RESERVED_VA(CPU) (0x7ffffffful & TARGET_PAGE_MASK)
Brad Bishopc342db32019-05-15 21:57:59 -040031 # else
Andrew Geissler82c905d2020-04-13 13:39:40 -050032 # define MAX_RESERVED_VA(CPU) (1ul << TARGET_VIRT_ADDR_SPACE_BITS)
Brad Bishopc342db32019-05-15 21:57:59 -040033 # endif