Stefan Lankes
34e7895d0a
aarch64 support ( #84 )
...
- add initial support for aarch64
- SMP support is currently missing
- uhyve and kernel are tested on Libre AML-S905X-CC (https://libre.computer/products/boards/aml-s905x-cc/ )
- only GICv2 support is integrated
2018-03-23 04:04:44 -04:00
Stefan Lankes
34e8b63191
remove obsolete self-references
2018-03-20 07:33:56 -04:00
Stefan Lankes
9a28225424
add memory pool with the same host and guest virtual address
2018-01-16 09:33:01 +01:00
Stefan Lankes
e40ef3a3c3
check ARAT feature, reduce the time to calibrate APIC timer
2018-01-01 22:24:53 +01:00
Stefan Lankes
eea45d721a
create GDT on demand to remove dependency on MAX_CORES
2017-12-31 11:20:14 +01:00
Stefan Lankes
0edbf56fd9
add option to reset fs & gs registers
2017-12-31 11:15:21 +01:00
Stefan Lankes
c94f6830f6
clear cr2 after handling the page fault
2017-12-31 11:12:46 +01:00
Stefan Lankes
b3af314559
remove the dependencies on an array of boot stacks
...
- share one stack for all core during the boot process
- reduce the size of the BSS section
2017-11-26 12:48:00 +01:00
Stefan Lankes
e8d202e68a
remove typo in cpuid check
2017-11-07 08:04:35 +01:00
Stefan Lankes
794f4ac3d3
enable MSR for string operations already in uhyve
2017-11-06 21:38:33 +01:00
Stefan Lankes
ed75d01517
add definition of MSR_IA32_MISC_ENABLE_FAST_STRING
2017-11-05 23:16:32 +01:00
Stefan Lankes
3c45b79acb
enable fast string operations
2017-11-05 22:08:11 +01:00
Stefan Lankes
57feac36e4
disable performance monitoring counter
2017-11-05 21:06:48 +01:00
Stefan Lankes
6ccefbba81
set no execution flag to protect cmdline
2017-11-05 15:50:12 +01:00
Stefan Lankes
2686177729
fix typos, mark region as cacheable
2017-11-05 15:49:22 +01:00
Stefan Lankes
c292ce0bb5
TSS' pointer ist1 will be created per task
...
=> remove obsolete line
2017-11-04 20:05:10 +01:00
Stefan Lankes
4c8e066aae
allocate stacks on demand, reduce the size of the BSS section
2017-11-04 12:46:57 +01:00
Stefan Lankes
d0c910d454
fix typo, ceil instead of floor during the border calculation
2017-10-19 22:23:40 +02:00
Stefan Lankes
838fd7748f
reduce the number of obsolete kernel messages
2017-09-23 10:25:23 +02:00
Stefan Lankes
e5f3ddcffa
serialize instruction before sending an IPI
2017-09-22 00:14:26 +02:00
Stefan Lankes
28606578e4
add options for user defined uhyve network
2017-09-05 11:54:58 +02:00
Jens Breitbart
cbb34022a0
Wshift negative value ( #79 ) + more compiler to travis ( #77 )
...
- Fixed clang warning `shifting a negative signed value is undefined`.
- use more compilers to test HermitCore in Travis
2017-08-30 12:51:23 +02:00
Stefan Lankes
e2803e606b
define kernel data segment as 64bit data segment
2017-08-21 00:45:25 +02:00
Stefan Lankes
81c7b8dac0
fix size of the GDT (forgot null descriptor)
2017-08-21 00:07:38 +02:00
Stefan Lankes
3b8e6791ee
create valid pseudo interrupt to set cs
2017-08-20 10:51:52 +02:00
Stefan Lankes
e38722c7f4
remove 32bit code
2017-08-20 10:36:49 +02:00
Stefan Lankes
b163fa4521
reload the segment descriptors after loading GDT
2017-08-20 10:19:25 +02:00
Stefan Lankes
dfa27cb3c1
set selectors to kernel data segment
2017-08-19 19:36:51 +02:00
Stefan Lankes
07eafc9a08
fix limit for the TSS
2017-08-18 19:09:15 +02:00
Stefan Lankes
576e4867a3
avoid the usage of sse & avx
2017-08-07 20:57:28 +02:00
Stefan Lankes
f33db1d51c
fix typo
2017-08-07 19:43:43 +02:00
Stefan Lankes
597ccb13ac
disable builtin functions
2017-08-07 19:39:22 +02:00
Stefan Lankes
f40f9ed51e
call directly the GNU linker
2017-08-07 12:14:08 +02:00
Stefan Lankes
8ec698a731
remove obsolete static array
2017-08-07 09:48:57 +02:00
Stefan Lankes
b9aad1757b
remove compiler warnings
2017-08-07 09:33:28 +02:00
Stefan Lankes
a5c5f28a6e
fix typo
2017-08-07 09:29:44 +02:00
Stefan Lankes
a6db410278
add check for -fstrength-reduce & -finline-functions
2017-08-07 09:26:13 +02:00
Stefan Lankes
e2bcdaf7db
remove compiler flags, which aren't supported by clang
2017-08-07 09:17:21 +02:00
Stefan Lankes
68a74edda1
use always compiler flags, which are supported by gcc & clang
2017-08-07 08:11:56 +02:00
Stefan Lankes
d785b1b89c
initialize APIC after the intialization of IDT & GDT
...
- fix problems with Qemu
2017-08-04 10:07:07 +02:00
Stefan Lankes
abeae7ac0b
remove obsolete global variable "kernel_stack"
2017-08-03 15:18:43 +02:00
Stefan Lankes
df256cc6c1
use unsigned operation instead of signed
2017-08-03 13:50:44 +02:00
Stefan Lankes
080c16088e
add option to disable mwait support
2017-08-03 11:52:52 +02:00
Stefan Lankes
3316bb74aa
add address of the CMCI register
2017-08-03 07:49:35 +02:00
Stefan Lankes
3e7bf2ec86
remove mwait support to avoid priority inversion
2017-08-03 07:48:39 +02:00
Stefan Lankes
3cc3cb0a29
increasing the readability
2017-08-03 00:43:01 +02:00
Stefan Lankes
cd6ebf5d8f
add info message if MCE is available
2017-08-03 00:21:23 +02:00
Stefan Lankes
8b89b18a96
enable support of machine check handling
2017-08-03 00:07:20 +02:00
Stefan Lankes
c3080e0d75
determine the current LVT level before checking the level
2017-07-31 01:23:13 +02:00
Stefan Lankes
beb86f75a9
check supportet LVT level before disabling LVT_TSR & LVT_PMV
2017-07-31 01:15:25 +02:00