32 lines
1.4 KiB
Plaintext
Executable File
32 lines
1.4 KiB
Plaintext
Executable File
KVM/MIPS Trap & Emulate Release Notes
|
|
=====================================
|
|
|
|
(1) KVM/MIPS should support MIPS32R2 and beyond. It has been tested on the following platforms:
|
|
Malta Board with FPGA based 34K
|
|
Sigma Designs TangoX board with a 24K based 8654 SoC.
|
|
Malta Board with 74K @ 1GHz
|
|
|
|
(2) Both Guest kernel and Guest Userspace execute in UM.
|
|
Guest User address space: 0x00000000 -> 0x40000000
|
|
Guest Kernel Unmapped: 0x40000000 -> 0x60000000
|
|
Guest Kernel Mapped: 0x60000000 -> 0x80000000
|
|
|
|
Guest Usermode virtual memory is limited to 1GB.
|
|
|
|
(2) 16K Page Sizes: Both Host Kernel and Guest Kernel should have the same page size, currently at least 16K.
|
|
Note that due to cache aliasing issues, 4K page sizes are NOT supported.
|
|
|
|
(3) No HugeTLB Support
|
|
Both the host kernel and Guest kernel should have the page size set to 16K.
|
|
This will be implemented in a future release.
|
|
|
|
(4) KVM/MIPS does not have support for SMP Guests
|
|
Linux-3.7-rc2 based SMP guest hangs due to the following code sequence in the generated TLB handlers:
|
|
LL/TLBP/SC. Since the TLBP instruction causes a trap the reservation gets cleared
|
|
when we ERET back to the guest. This causes the guest to hang in an infinite loop.
|
|
This will be fixed in a future release.
|
|
|
|
(5) Use Host FPU
|
|
Currently KVM/MIPS emulates a 24K CPU without a FPU.
|
|
This will be fixed in a future release
|