[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CVMSEG Emulation
From: |
Peter Maydell |
Subject: |
Re: CVMSEG Emulation |
Date: |
Mon, 12 Dec 2022 12:02:56 +0000 |
On Fri, 9 Dec 2022 at 21:03, Jiaxun Yang <jiaxun.yang@flygoat.com> wrote:
>
>
>
> > 2022年12月9日 17:44,Christopher Wrogg <cwrogg@umich.edu> 写道:
> >
> > I tried both.
> >
> > Option 1
> > What I did:
> > #undef TARGET_VIRT_ADDR_SPACE_BITS and #define
> > TARGET_VIRT_ADDR_SPACE_BITS 64
> > The Result:
> > perror reports "Cannot allocate memory"
> > Option 2:
> > What I did:
> > TARGET_VIRT_ADDR_SPACE_BITS for me is 30 so I masked by 0x3FFFFFFF
> > The Result:
> > The segfault persists and gdb reports the memory as inaccessible.
>
> Hmm this looks wired for me, by no chance TARGET_VIRT_ADDR_SPACE_BITS for MIPS
> can be 30, on N64 ABI build it should be 48 and 32 for N32 or O32 build.
>
> It is defined in target/mips/cpu-param.h .
For 32-bit user-mode we currently set it to 31, on the theory that userspace
only gets access to the bottom half of the address space.
-- PMM