On Mon, Jul 31, 2017 at 01:47:48PM -0700, Richard Henderson wrote:
> On 07/31/2017 06:09 AM, James Hogan wrote:
> > +static int mips_um_ksegs;
> > +
> > uint64_t cpu_mips_kseg0_to_phys(void *opaque, uint64_t addr)
> > {
> > return addr & 0x1fffll;
> > @@ -38,3 +40,13 @@ uint64_t
On 07/31/2017 06:09 AM, James Hogan wrote:
+static int mips_um_ksegs;
+
uint64_t cpu_mips_kseg0_to_phys(void *opaque, uint64_t addr)
{
return addr & 0x1fffll;
@@ -38,3 +40,13 @@ uint64_t cpu_mips_kvm_um_phys_to_kseg0(void *opaque,
uint64_t addr)
{
return addr |
MIPS KVM trap & emulate guest kernels have a different segment layout
compared with traditional MIPS kernels, to allow both the user and
kernel code to run from the user address segment without repeatedly
trapping to KVM.
QEMU currently supports this layout only for KVM, but its sometimes
useful