Commit Graph

1217 Commits

Author SHA1 Message Date
散樗
2553298b1d Handle cpuid and rdtsc instruction
Init support for cpuid and rdtsc instruction handling in occlum.

This patch includes:
1. cpuid exception handler for all information leaves;
2. rdtsc exception handler;
3. handler registration;
4. cpuid test;
5. rdtsc test.

Signed-off-by: 散樗 <kailun.qkl@antfin.com>
2019-07-18 13:51:50 +08:00
Tate, Hongliang Tian
56c69b5f3c Refactor mmap implementation
1. Add a full test suite for mmap
2. Implement file-backed memory mapping
3. Implement fixed, anonymous memory mapping
4. Implement hinted, anonymous memory mapping
5. Implement munmap that covers partial/multiple memory mappings
2019-07-01 11:56:04 +08:00
Youren
3a38f68c69 Add c++ examples 2019-06-01 11:22:04 +08:00
Tate Tian
06924c0e47
Add C++ support in the Occlum Docker image 2019-06-01 11:18:52 +08:00
Tate Tian
5aaf6de989
Update README 2019-05-27 22:11:14 +08:00
WangRunji
2fdc7d3b17 sefs: fix Rust SGX SDK version and Rust nightly version 2019-05-27 22:07:15 +08:00
Tate Tian
b189e996ab
Fix typos in README 2019-05-27 21:15:11 +08:00
Tate, Hongliang Tian
94acbb1c57 Add Dockerfile 2019-05-27 19:28:38 +08:00
Tate, Hongliang Tian
3465477cc1 Fix two bugs that prevents compilation and tests working 2019-04-29 00:01:17 +08:00
Tate Tian
4b804703b9
Merge pull request #70 for networking system calls 2019-04-28 23:40:48 +08:00
WangRunji
413586f729 add integrity_only_opt and sgx_file_cache feature 2019-04-26 22:48:00 +08:00
WangRunji
6e871f7948 reformat code using cargo fmt 2019-04-26 21:26:30 +08:00
WangRunji
dd3de96b8e hack unix socket for php 2019-04-24 19:25:09 +08:00
WangRunji
3850c31235 fix unix socket bench 2019-04-24 15:28:05 +08:00
WangRunji
cccc1cfb58 add unix socket bench 2019-04-24 13:41:01 +08:00
WangRunji
9797a64f06 enable unix socket and add test for it 2019-04-24 13:28:35 +08:00
WangRunji
9106bd46f2 fix for php. include incomplete code for UnixSocket 2019-04-23 22:00:38 +08:00
WangRunji
f846ba11f2 fix wait4 not removing child 2019-04-23 14:00:44 +08:00
WangRunji
0437e81f36 fix impl File for Stdin/Stdout 2019-04-23 12:58:28 +08:00
WangRunji
26189dddaa implement fcntl & ioctl for socket. fix lighttpd performance 2019-04-23 01:43:41 +08:00
WangRunji
1326924dbb fix errno = 0 and introduce macro 'try_libc' 2019-04-23 00:49:37 +08:00
WangRunji
141094e95e fix return value from libc::ocall 2019-04-22 21:55:57 +08:00
WangRunji
76f9ff380b add timing for syscall 2019-04-22 17:42:20 +08:00
WangRunji
9c9d1eed3a implement /dev/null 2019-04-22 16:32:40 +08:00
WangRunji
54243c543a use errno! macro for all error 2019-04-22 15:54:39 +08:00
WangRunji
b99344d7f5 implement sys_sendfile 2019-04-22 15:37:19 +08:00
WangRunji
f4dacdc01d add cache for SgxFile 2019-04-21 18:04:48 +08:00
WangRunji
ad98a1698e add timing
by shenyouren
2019-04-21 17:28:06 +08:00
WangRunji
5d9b8e4fa3 implement missing IO function for SocketFile 2019-04-21 17:26:17 +08:00
WangRunji
58ff7b88b5 fix SgxFile seek after the end 2019-04-14 20:31:19 +08:00
WangRunji
4811044c14 fix SgxFile read/write empty buffer 2019-04-13 21:03:10 +08:00
WangRunji
d19676032d implement add_open in posix_spawn 2019-04-13 12:05:50 +08:00
WangRunji
58a7f7c126 simplify epoll_ctl 2019-04-12 18:02:40 +08:00
WangRunji
82f4169618 enlarge preallocated space. sync file system on exit. 2019-04-12 16:54:49 +08:00
WangRunji
b2d75f386c support readlink "/proc/self/exe". impl dummy fcntl.getfl 2019-04-12 15:17:27 +08:00
WangRunji
a8060f0b24 add simple epoll test. fix epoll_wait, accept4 2019-04-12 15:14:11 +08:00
WangRunji
80a73eaa0d fix close_on_spawn and file_actions 2019-04-12 14:27:48 +08:00
WangRunji
6d432b0a03 fix deadlock when log getting pid 2019-04-12 13:42:19 +08:00
WangRunji
3defc8b9aa update sefs 2019-04-11 22:24:55 +08:00
WangRunji
b5697ab611 Merge remote-tracking branch 'official/master' into net
# Conflicts:
#	src/libos/src/fs/mod.rs
#	src/libos/src/syscall/mod.rs
#	test/Makefile
2019-04-11 19:13:29 +08:00
WangRunji
bd9a3dd578 fix epoll_ctl deadlock 2019-04-11 19:10:12 +08:00
Tate, Hongliang Tian
2957fa99d5 Make sure VMRange fills its memory with zeros if necessary 2019-04-11 18:19:49 +08:00
Tate, Hongliang Tian
862601604c Refactor VMRange code and fix two bugs
The first bug is that a VMRange may not be allocated to a 4KB-aligned address.
The second bug is that a VMRange may not be deallocated by its parent VMRange.
2019-04-11 18:19:49 +08:00
Tate, Hongliang Tian
895f70a2dc Refactor VMRange allocation for readability 2019-04-11 09:13:53 +08:00
Tate, Hongliang Tian
356884679b Add readlink 2019-04-11 09:13:53 +08:00
Tate, Hongliang Tian
44ef19726f Add fcntl 2019-04-11 09:13:53 +08:00
WangRunji
f9121a025e implement epoll 2019-04-10 14:07:50 +08:00
Tate, Hongliang Tian
785d3237b9 Add getuid, getgid, geteuid, getegid, etc. 2019-04-10 09:03:41 +08:00
Tate, Hongliang Tian
e335e8df1d Add sigaction and sigprocmask (but not implemented) 2019-04-10 09:03:41 +08:00
Tate, Hongliang Tian
d7e266d0e3 Add access and faccessat 2019-04-10 09:03:41 +08:00