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

1696 commits

Author SHA1 Message Date
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
Stefan Lankes
66dcb2782e print also the multiprocessor affinity register 2018-07-02 19:58:10 +00:00
Stefan Lankes
ec15e70f75 increase the readability of the pagefault handler 2018-06-30 20:50:03 +00:00
Stefan Lankes
e1a40a4424 fix typo in saving / restoring of the task context 2018-06-30 07:55:29 +00: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
33060c13f1 remove typos 2018-06-29 06:00:55 +00:00
Stefan Lankes
c33142e318 align kernel to a 16KB boundary
=> the whole kernel can be mapped as contiguous region
2018-06-25 08:14:15 +00:00
Stefan Lankes
ad5e9af32c remove obsolete function 2018-06-17 22:29:46 +00:00
Stefan Lankes
3c7fb82971 extend example to test the thread local storage 2018-06-17 13:41:39 +00:00
Stefan Lankes
c48461b796 remove dependency from kernel_end
- the new version binutils will remove the mark kernel_end

=> remove the usage of this mark
2018-06-13 19:40:38 +00:00
Stefan Lankes
0da5a822b9 fix image size calculation if app contains more than one load section 2018-06-13 19:40:01 +00:00
Jens Breitbart
916fd51879 Fixed McKernel Link 2018-06-13 19:40:01 +00:00
Stefan Lankes
0a957de645 remove compiler warning 2018-06-09 19:50:47 +02:00
Stefan Lankes
5739a4700c Merge branch 'master' into devel 2018-06-02 01:44:21 +02:00
Stefan Lankes
cd1d43c136 fix URLs 2018-06-02 01:42:45 +02:00
Stefan Lankes
d905612394 Merge branch 'master' into devel 2018-06-01 01:18:22 +02:00
Stefan Lankes
30e82284f8 fix path to the build status icon 2018-06-01 01:12:25 +02:00
Stefan Lankes
a569bb25a0 Merge branch 'master' into devel 2018-06-01 00:45:39 +02:00
Stefan Lankes
4ca95a6ff5 reduce the number of log messages 2018-06-01 00:27:13 +02:00
Stefan Lankes
c07adcdec9 add g++ compiler to the docker image 2018-06-01 00:26:54 +02:00
Stefan Lankes
2452c960ca install all ubuntu packagges before installing the toolchain 2018-05-31 23:26:49 +02:00
Stefan Lankes
08d7bc786d revise docker deployment, build also bootstrap version 2018-05-31 19:33:04 +02:00
Stefan Lankes
2a1e1254fb deploy docker image for the toolchain 2018-05-30 00:50:53 +02:00
Stefan Lankes
dd961473f3 fix package name and path to the proxy 2018-05-30 00:29:01 +02:00
Stefan Lankes
566a55ee40 fix package name and path to the proxy 2018-05-30 00:27:19 +02:00
Stefan Lankes
3b39937162 install rpm to build valid install packages 2018-05-30 00:13:55 +02:00
Stefan Lankes
78f02b90bf fix wrong initialization of EFER 2018-05-30 00:10:53 +02:00
Stefan Lankes
459c7ea48e add check for msr-index and if missing a workaround 2018-05-30 00:10:00 +02:00
Stefan Lankes
89149c00e3 Merge branch 'master' into devel 2018-05-29 23:58:09 +02:00
Stefan Lankes
2da177a309 fix path to libgomp.spec 2018-05-29 23:49:31 +02:00