alpha-linux-user: Work around hosted mmap allocation problems
Signed-off-by: Richard Henderson <rth@twiddle.net>
This commit is contained in:
parent
d0f204952a
commit
76393642ae
@ -40,9 +40,20 @@
|
|||||||
|
|
||||||
#define TARGET_PAGE_BITS 13
|
#define TARGET_PAGE_BITS 13
|
||||||
|
|
||||||
|
#ifdef CONFIG_USER_ONLY
|
||||||
|
/* ??? The kernel likes to give addresses in high memory. If the host has
|
||||||
|
more virtual address space than the guest, this can lead to impossible
|
||||||
|
allocations. Honor the long-standing assumption that only kernel addrs
|
||||||
|
are negative, but otherwise allow allocations anywhere. This could lead
|
||||||
|
to tricky emulation problems for programs doing tagged addressing, but
|
||||||
|
that's far fewer than encounter the impossible allocation problem. */
|
||||||
|
#define TARGET_PHYS_ADDR_SPACE_BITS 63
|
||||||
|
#define TARGET_VIRT_ADDR_SPACE_BITS 63
|
||||||
|
#else
|
||||||
/* ??? EV4 has 34 phys addr bits, EV5 has 40, EV6 has 44. */
|
/* ??? EV4 has 34 phys addr bits, EV5 has 40, EV6 has 44. */
|
||||||
#define TARGET_PHYS_ADDR_SPACE_BITS 44
|
#define TARGET_PHYS_ADDR_SPACE_BITS 44
|
||||||
#define TARGET_VIRT_ADDR_SPACE_BITS (30 + TARGET_PAGE_BITS)
|
#define TARGET_VIRT_ADDR_SPACE_BITS (30 + TARGET_PAGE_BITS)
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Alpha major type */
|
/* Alpha major type */
|
||||||
enum {
|
enum {
|
||||||
|
Loading…
Reference in New Issue
Block a user