[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 01/11] Signed-off-by: Karim Taha <address@hidden>
From: |
Karim Taha |
Subject: |
[PATCH v3 01/11] Signed-off-by: Karim Taha <address@hidden> |
Date: |
Fri, 21 Apr 2023 18:41:50 +0200 |
From: Warner Losh <imp@bsdimp.com>
Intialize guest_base in bsd-user/main.c.
Allow guest_base to be initialized on 64-bit hosts, the initial value is used
by g2h_untagged function defined in include/exec/cpu_ldst.h
Signed-off-by: Karim Taha <kariem.taha2.7@gmail.com>
---
bsd-user/main.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/bsd-user/main.c b/bsd-user/main.c
index babc3b009b..afdc1b5f3c 100644
--- a/bsd-user/main.c
+++ b/bsd-user/main.c
@@ -50,8 +50,22 @@
#include "target_arch_cpu.h"
int singlestep;
-uintptr_t guest_base;
+
+/*
+ * Going hand in hand with the va space needed (see below), we need
+ * to find a host address to map the guest to. Assume that qemu
+ * itself doesn't need memory above 32GB (or that we don't collide
+ * with anything interesting). This is selected rather arbitrarily,
+ * but seems to produce good results in tests to date.
+ */
+# if HOST_LONG_BITS >= 64
+uintptr_t guest_base = 0x800000000ul; /* at 32GB */
+bool have_guest_base = true;
+#else
+uintptr_t guest_base; /* TODO: use sysctl to find big enough hole */
bool have_guest_base;
+#endif
+
/*
* When running 32-on-64 we should make sure we can fit all of the possible
* guest address space into a contiguous chunk of virtual host memory.
--
2.40.0
- [PATCH v3 00/11] Contribution task implementations, for the 'FreeBSD user emulation improvements' project., Karim Taha, 2023/04/21
- [PATCH v3 01/11] Signed-off-by: Karim Taha <address@hidden>,
Karim Taha <=
- [PATCH v3 02/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 03/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 04/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 05/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 06/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 07/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 09/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 10/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21
- [PATCH v3 08/11] Signed-off-by: Karim Taha <address@hidden>, Karim Taha, 2023/04/21