Philipp Dreßen
324a23d3b1
Fixed #109 - sys_write() ( #110 )
...
removes incorrect use of arguments
2019-06-01 09:17:34 +02:00
Stefan Lankes
1173c1b7fd
uses time stamp counter to calculate the uptime
2018-08-06 20:18:15 +02:00
Stefan Lankes
0c89ee0bbd
Expect virtual addresses for the buffers in UHYVE_PORT_READ/UHYVE_PORT_WRITE and perform the address translation in uhyve ( #97 )
...
Depending on the size of the data to be read/written, the buffers could cross page boundaries in HermitCore. Previously, uhyve expected the physical addresses of the pages behind the buffers to be contiguous. However, the OS only guarantees that the virtual addresses for the buffer memory are contiguous. On the contrary, each virtual address may map to a physical address anywhere in memory.
2018-08-02 12:53:37 +02:00
Stefan Lankes
f8257413fe
increase the readability, get_zeroed_huge_page returns valid address
2018-08-02 09:55:54 +02:00
Pierre Olivier
eb2a9863c4
Fix envc transfer from host to guest with uhyve
2018-08-01 14:24:01 +02:00
Stefan Lankes
63bd7fa8b4
fix TLS initialization, disable the support of contiguous blocks
...
- fix TLS initialization on aarch64
- disable temporary the support of contiguous blocks on aarch64
- add possibility to dump a page table entries
- improve TLS test case
2018-06-29 10:28:10 +00:00
Stefan Lankes
0bd1df6052
move benchmark to libhermit to avoid side effects with LwIP
2018-04-30 08:02:45 +02:00
Stefan Lankes
807c210111
update timer after updating the timer list
...
- revise code, increase the readability
2018-04-29 23:50:02 +02:00
Stefan Lankes
e26ec98b5a
revise code to increase the readability
2018-04-28 15:28:15 +02:00
Stefan Lankes
ebce6e7221
add helper functions to proctect newlib's environment and heap
2018-04-28 15:26:42 +02:00
Stefan Lankes
6028d05a41
wakeup remote core, if idle task is running on the remote core
...
=> avoid race by checking the status of the running task
2018-04-17 15:50:44 +02:00
Stefan Lankes
4d694dcc68
avoid race between checking workqueues and calling halt
...
between checking the workqueues and the calling halt instruction, a
process and the corresponding interrupt is able arrive and lost
2018-04-17 12:00:12 +02:00
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
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
8653afbd07
avoid using KVM_TRANSLATE in a loop
...
- determine within HermitCore the guest physical address
=> simplifies the translation from guest virtual to host virtual address
=> reduce the number of syscalls (KVM_TRANSLATE)
2017-11-10 22:17:45 +01:00
Pierre Olivier
cfd208d266
Support for forwarding command line parameters and environment variables
...
to uhyve
2017-11-07 19:51:57 -05:00
Stefan Lankes
94c5cfbfd0
increasing the readability by simplifying the usage of send/recv functions
2017-09-24 00:55:27 +02:00
Stefan Lankes
638923afbf
fix bug in counting of the ready tasks
2017-09-23 10:26:41 +02:00
Stefan Lankes
22991d27c2
check LWIP_FD_BIT before syscall will be forwarded to uhyve
2017-09-21 22:39:34 +02:00
Stefan Lankes
4839bc1643
remove obsolete code
2017-09-19 09:16:33 +02:00
Stefan Lankes
c6157e3ef7
use interrupts to notifiy incoming packets
...
=> avoid busy waiting in uhyve's network adapter
2017-09-18 00:23:09 +02:00
Stefan Lankes
28606578e4
add options for user defined uhyve network
2017-09-05 11:54:58 +02:00
Stefan Lankes
463298c383
add initial draft of uhyve's network interface
...
- based on https://github.com/Solo5/solo5 and
- Tim's port for HermitCore
2017-09-04 18:20:54 +02:00
Stefan Lankes
7f6bdd72b1
add option to enable e1000 driver
2017-08-03 22:30:30 +02:00
Stefan Lankes
abeae7ac0b
remove obsolete global variable "kernel_stack"
2017-08-03 15:18:43 +02:00
Stefan Lankes
437f445ed8
fix typos, fix meaing of PAGE_CEIL and PAGE_FLOOR
2017-07-15 16:24:08 +02:00
Stefan Lankes
6033da1ecf
remove obsolete code
2017-06-15 23:11:24 +02:00
Stefan Lankes
b4c45c5d7d
remove obsolete code
2017-06-15 23:10:22 +02:00
Stefan Lankes
16106c0ee9
remove obsolete code
2017-06-15 16:27:13 +02:00
Stefan Lankes
1db519b19e
remove obsolete code
2017-06-15 12:53:11 +02:00
Stefan Lankes
9311a27019
add additional debug messages
2017-06-14 15:00:52 +02:00
Stefan Lankes
fea0f31018
avoid busy waiting if the cpu feature mwait is missing
2017-06-07 21:54:28 +02:00
Stefan Lankes
1fc09b4246
add first draft of a virtio network driver
2017-06-05 11:15:45 +02:00
Stefan Lankes
29c1f14bf5
print boot parameter if available
2017-05-27 21:20:33 +02:00
Stefan Lankes
2f40db1d50
forward only guest physical address to the hypervisor
2017-05-26 16:46:48 +02:00
Stefan Lankes
2aeadb390b
cosemtic changes to increase the readability
2017-05-24 22:21:34 +02:00
Stefan Lankes
8cb9c81184
add system interface for spinlocks
2017-05-21 23:43:22 +02:00
Stefan Lankes
77e9ef0ca6
add additional debug messages
2017-05-21 23:39:04 +02:00
Stefan Lankes
83f185980a
fix bug in the detection of the multi-kernel mode
2017-04-23 00:28:11 +02:00
Stefan Lankes
57ad4c5af3
reduce the number of debug messages
2017-04-21 19:48:05 +02:00
Stefan Lankes
940be14a0e
remove dependency from kernel_end
...
- this patch solves linker problems, if kernel_end located above 2GB
- in multi-kernel mode, it requires also a patch for Linux
2017-04-18 00:26:38 +02:00
Daniel Krebs
eca8be0236
remove old Makefile/autotools based build system and debian scripts
2017-04-03 18:14:42 +02:00
Stefan Lankes
c3a4a6e2df
enable a check if the HermitCore app depends on a proxy
2017-04-03 09:16:54 +02:00
Stefan Lankes
9862cea384
add timeout to wait for an IP address
2017-04-02 23:33:57 +02:00
Stefan Lankes
a3ea183edc
move more helper functions to the architecture dependent directory
2017-03-19 22:49:23 +01:00
Stefan Lankes
f8685378a8
remove wrong obsolete #if statement
2017-03-09 13:56:10 +01:00
Stefan Lankes
f6365ed840
move fpu_handler to the architecture independent directory
2017-03-09 08:09:05 +01:00
Stefan Lankes
473cdb76d6
move architecture dependent functions to the subdirectory arch
2017-03-09 07:35:59 +01:00
Stefan Lankes
e288b9ee4b
remove typos
2017-03-07 00:15:04 +01:00