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

1726 commits

Author SHA1 Message Date
Stefan Lankes
aca2a4873f install final compiler instead of bootstrap compiler 2018-08-24 07:10:57 +02:00
Stefan Lankes
349060c5b6 reenable Travis tests 2018-08-24 06:47:42 +02:00
Stefan Lankes
d5090f41dc reenable debian stretch support 2018-08-24 06:41:07 +02:00
Stefan Lankes
a4668c68e0 build bootstrap version of libhermit 2018-08-22 00:17:32 +02:00
Stefan Lankes
577c733d96 disable temporary debian stretch support 2018-08-20 08:10:20 +02:00
Stefan Lankes
4d0e467d06 fix typo in package name 2018-08-19 16:43:10 +02:00
Stefan Lankes
4b4d46ff4e fix typos 2018-08-19 16:35:28 +02:00
Stefan Lankes
5fa50f338d fix package name 2018-08-19 15:49:10 +02:00
Stefan Lankes
69966f6e6e fix typo (build deb package instead of rpm) 2018-08-19 15:36:53 +02:00
Stefan Lankes
325b77c7a1 use checkinstall to create debian package 2018-08-19 15:20:12 +02:00
Stefan Lankes
41f8ae1f40 add Debian stretch support 2018-08-19 14:39:46 +02:00
Stefan Lankes
80b2a0b690 add libomp-hermit to the packet list 2018-08-12 10:28:20 +02:00
Stefan Lankes
0b17bfaf92 guarantee that _start is at the beginning of the kernel 2018-08-12 09:01:15 +02:00
Stefan Lankes
c0e99795a5 Merge branch 'devel' 2018-08-11 23:56:16 +02:00
Stefan Lankes
0b45513d12 switch to ELF OS ABI identifier 0xFF
- this is the equivalent to "ELFOSABI_STANDALONE"
- ELFOSABI_STANDALONE stands for standalone applications
2018-08-11 23:54:24 +02:00
Stefan Lankes
fa7946a4b9 add ring 0 detection, if running in ring 3 applications will be shutdown
- safe shutdown, if app is running in ringe 3
2018-08-11 00:40:38 +02:00
Stefan Lankes
a3eadd81a9 fix typo 2018-08-07 10:50:22 +02:00
Stefan Lankes
0d11dd0b4e add check if the frequency is already calculated 2018-08-07 10:49:21 +02:00
Stefan Lankes
8f04bbd747 use boot tsc to calculate the uptime 2018-08-07 09:53:22 +02:00
Stefan Lankes
1173c1b7fd uses time stamp counter to calculate the uptime 2018-08-06 20:18:15 +02:00
Stefan Lankes
6eee6b8bd1 remove obsolete buffering of TX packets 2018-08-06 07:54:34 +02:00
Stefan Lankes
b60aeff449 increase LwIP performance by increasing buffer and window sizes 2018-08-06 07:51:28 +02:00
Stefan Lankes
66303eed3e add the possibility to disable huge pages 2018-08-03 09:25:24 +02:00
Stefan Lankes
595a522cc6 disable MP table search on uhyve 2018-08-03 09:24:44 +02:00
Stefan Lankes
8bc778b6fe add helper functions to check if all data is written to the socket 2018-08-02 22:48:09 +02:00
Stefan Lankes
3ba88256f1 remove sleeps in multithreaded version, add license text 2018-08-02 21:11:52 +02:00
Stefan Lankes
aef158f3f9 check at the end of the init routine if we already receive a packet 2018-08-02 21:09:58 +02:00
Stefan Lankes
71cd147967 align end of the kernel to a 2 MB boundary 2018-08-02 21:09:10 +02:00
Stefan Lankes
bdfcaa5939 use macro HUGE_PAGE_SIZE instead of fix numbers 2018-08-02 21:08:25 +02:00
Stefan Lankes
3e6b84b642 add tiny web server as test case
This "Tiny Web Server" is derived from nweb, which was developed
by Nigel Griffiths and published at
https://www.ibm.com/developerworks/systems/library/es-nweb/index.html.

The web server was released under the IBM License Agreement.
2018-08-02 15:41:30 +02:00
Stefan Lankes
ece962963d enable huge page support in uhyve 2018-08-02 12:55:20 +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
955dbc2fcf align in the pagefault handler all pages to a huge page boundary 2018-08-02 09:57:42 +02:00
Stefan Lankes
f8257413fe increase the readability, get_zeroed_huge_page returns valid address 2018-08-02 09:55:54 +02:00
Stefan Lankes
2b3e5c84e2 increase the readability of pagefault handler & check_pagetables 2018-08-02 09:08:08 +02:00
Stefan Lankes
ce38ddd622 add support of huge pages
- the heap use huges pages to allocate memory
2018-08-01 23:59:42 +02:00
Pierre Olivier
eb2a9863c4 Fix envc transfer from host to guest with uhyve 2018-08-01 14:24:01 +02:00
Stefan Lankes
215b16884d
disable temporary unsupported features on aarch64 (#96)
* remove OpenMP Runtime, move runtime to an own package

* remove uneeded dependencies to rdtsc, disable rdtsc based benchmarks on aarch64

* disable temporary go and xray applications on aarch64
2018-07-22 21:33:30 +02:00
Stefan Lankes
f8f43cc82b remove OpenMP Runtime, move runtime to an own package 2018-07-22 11:28:38 +02:00
Stefan Lankes
748744cdf9
add basic gdb support for aarch64 (#94)
following kernel features are required:
- first page table (pl0) is located at a fix address
- unhandled page faults are forwarded to the hypervisor
2018-07-21 21:42:11 +02:00
Stefan Lankes
2319afd888 add test case with debug information
- required to test the debugging features within uhyve
2018-07-10 08:58:19 +02:00
Stefan Lankes
d62fb9f762 move proxy and hypervisor to a new submodule 2018-07-08 22:21:07 +02:00
Stefan Lankes
69ed9f5354 Merge branch 'devel' of github.com:hermitcore/libhermit into devel 2018-07-08 07:44:06 +02:00
Stefan Lankes
896f1cca86 transfer x87 registers to the gdb, increase the readabilty 2018-07-08 07:40:23 +02:00
Stefan Lankes
4741cfbf6e fix typo, include template to support gdb on aarch64 2018-07-05 22:46:11 +00:00
Stefan Lankes
55ca03c5d4 add first draft of gdb support for x86_64
- derived from ukvm/solo5 (https://github.com/Solo5/solo5/tree/master/ukvm)
- first adaption developed by Pierre Oliver, VT
2018-07-06 00:35:34 +02:00
Stefan Lankes
9e6484f4f8 enable interrupt handling on all cores 2018-07-02 20:19:33 +00:00
Stefan Lankes
37b41f8fd2 initialize thread id register 2018-07-02 20:13:26 +00:00
Stefan Lankes
8500695907 prepare smp support, add support of "per_core" data 2018-07-02 20:11:48 +00:00
Stefan Lankes
bbcafad2d3 add inline function to determine the cpu state 2018-07-02 20:05:49 +00:00