1
0
Fork 0
mirror of https://github.com/hermitcore/libhermit.git synced 2025-03-09 00:00:03 +01:00
Commit graph

67 commits

Author SHA1 Message Date
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