#
60e2acdb |
|
22-Oct-2017 |
Yanyan Shen <yanyan.shen@data61.csiro.au> |
arm/hyp: add support for running multiple ARM VMs This commit saves/restores various control registers that can be modified by guest VM kernels, so seL4 can execute multiple ARM 32-bit VMs multiplexing a single physical core. When the CONFIG_HAVE_FPU option is selected, the commit allows the VMs to use FPU registers and enables lazily saving/restoring FPU registers for the VMs.
|
#
5d146463 |
|
18-Jan-2017 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
ARM: Refactor how we get/set seL4 kernel stack This commit makes seL4 hold the stack address on TPIDRPRW register (PL1 only Thread ID Register, VMSA, see B4.1.150 section of ARMv7-A and ARMv7-R edition reference manual). Originally, the kernel stack was (re-)mapped to a fixed kernel virtual address and on traps sp is loaded with this virtual address. Reason is to shave up some cycles/instructions on (fast) traps path instead of having two instructions (loading global variable pointer and then memory-load stack address from it). With ARM pipelining getting smart/complex (from ARMv7 onwards), there is no noticeable difference in performance between the two implementations. Furthermore, this change makes it easy for SMP to load different stacks for each core and do CPU ID arithmetic efficiently. It also avoids the issues involving (re-)mapping stacks for different cores if we followed the original design. Note: the main side-effect to this change is that the kernel stack for ARM is no longer mapped with execute-never attribute.
|
#
ef00e986 |
|
21-Aug-2016 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-615: arm entry point stubs
|
#
f34f354a |
|
16-Aug-2016 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-617: one source of memory object sizes Adds the following constants to libsel4 and uses them in the kernel. seL4_SectionSize (arm) seL4_SuperSectionSize (arm) seL4_HugePageSize (x86 - pae) seL4_LargePageSize (arm) seL4_DataFault seL4_InstructionFault
|
#
500bdd03 |
|
27-Jul-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
arm: Remove unused arm_swi_undefined_syscall
|
#
778043a7 |
|
18-Jul-2016 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
ARM Hyp: Fix fastpath_restore on ARM Hyp and implement slowpath and restore in C
|
#
6a8f97c2 |
|
15-Jun-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
arm-hyp: Push ARM_HYP config check into traps.S
|
#
5f0ae410 |
|
02-Jun-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
arm-hyp: Minor cleanups Cleanup some small licensing, whitespace and configuration details
|