He Sun
b9b9b1032c
Avoid locking for checking if a process has been forced to exit
...
It turns out taking a lock in every system call is a significant
performance bottleneck. In light of this finding, we replace a mutex in
a critical path of system call with an atomic boolean.
2020-06-17 22:54:33 +08:00
LI Qing
340e2188f5
Fix the path handling bug of SEFS when doing inode lookup
2020-06-17 14:51:30 +08:00
He Sun
3a5793be4f
Fix set_tid_address not supporting null pointers
2020-06-17 07:44:47 +08:00
Tate, Hongliang Tian
9cefcb08b6
Bump version to 0.13.0
2020-06-13 04:29:50 +00:00
Zongmin
898967554c
Link uRTS static library
2020-06-13 04:19:45 +00:00
Hui, Chunyang
6e57937b45
Add support for sysinfo syscall
2020-06-13 03:33:32 +00:00
LI Qing
c8a4f2f8aa
Update SEFS to generate deterministic MAC for integrity only SEFS
2020-06-13 03:33:32 +00:00
Hui, Chunyang
9ce23a8c08
Add symbolic file support for FISH demo
2020-06-13 03:33:32 +00:00
Hui, Chunyang
bddb87a11b
Fix stat for symbolic file
2020-06-13 03:33:32 +00:00
LI Qing
c8e3e0ffc6
Add clock_getres syscall
2020-06-13 03:33:32 +00:00
Tate, Hongliang Tian
70d3991ff5
Rewrite mremap system call
...
This rewrite serves three purposes:
1. Fix some subtle bugs in the old implementation;
2. Implement mremap using mmap and munmap so that mremap can automatically
enjoy new features (e.g., mprotect and memory permissions) once mmap and
munmap support the feature.
3. Write down the invariants hold by VMManager explictly so that the correctness
of the new implementation can be reason more easily.
2020-06-13 03:33:32 +00:00
He Sun
28440b0d69
Build in the MAC of the occlum configuration file with objcopy
...
1. Objcopy the MAC of Occlum.json to libocclum-libos.so before signature
during occlum build.
2. Remove the files and codes no longer used.
2020-06-13 03:33:32 +00:00
He Sun
f020fed2ae
Use Intel SGX SDK reserved memory as the user space memory
2020-06-13 03:33:32 +00:00
jack.wxz
cfbab68a9d
Use pal api interface without prefix of libos type.
...
Signed-off-by: jack.wxz <wangxiaozhe@linux.alibaba.com>
2020-06-12 09:02:07 +08:00
LI Qing
a0d7b96a8f
Polish the XGBoost demo
...
1. Remove some useless installed packages
2. Adjust max number of threads according to CPU cores
2020-06-05 15:09:26 +08:00
Junxian Xiao
e8e14350a5
Support access key in remote attestaion demo
...
1. add access key configuration and code
2. Upgrade libcurl to support https
3. Support debug compile mode
Signed-off-by: Junxian Xiao <junxian.xjx@antfin.com>
2020-06-05 14:52:31 +08:00
zongmin.gu
4e02db367e
Update occlum exec to support kill
2020-06-05 14:52:10 +08:00
Hui, Chunyang
f4d9a7f4e1
Fix travis test script
2020-06-05 14:51:12 +08:00
Tate, Hongliang Tian
37ca75da47
Update README to explain the new Occlum.json format
2020-06-05 04:16:16 +00:00
Tate, Hongliang Tian
ffbae880f2
Reorder the config entries in Occlum.json
...
Not all config entries are created equal: some are more likely to be
customized by users, some are not so often. This commit reorders the
config entries in descending order of expected popularity.
2020-06-05 04:16:16 +00:00
LI Qing
c1b4814703
Rewrite Python demo with NumPy, scikit-learn, and pandas
2020-06-05 11:56:31 +08:00
zongmin.gu
942321363d
Combine the enclave configuration into the occlum configuration file
...
Update the occlum.json to align with the gen_enclave_conf design.
Below is the two updated structures:
"metadata": {
"product_id": 0,
"version_number": 0,
"debuggable": true
},
"resource_limits": {
"max_num_of_threads": 32,
"kernel_space_heap_size": "32MB",
"kernel_space_stack_size": "1MB",
"user_space_size": "256MB"
}
2020-06-05 11:03:47 +08:00
Tate, Hongliang Tian
c87ce9dd34
Bump version to 0.12.2
2020-06-04 21:39:56 +00:00
LI Qing
f54abc78a2
Support to execute a symlink file
2020-06-04 20:46:50 +08:00
Tate, Hongliang Tian
655869711a
Support page fault
2020-06-04 20:36:29 +08:00
Hui, Chunyang
3939899e76
Fix local attestation demo to use new PAL API and sdk 2.9.1
...
Also format the code.
2020-06-04 20:05:55 +08:00
Tate, Hongliang Tian
8c113eb8a2
Fix a minor format issue
2020-06-04 11:47:48 +00:00
Tianjia Zhang
aed88145f2
pal: Fix crash caused by getpwuid() returning NULL
...
On lightweight Linux distribution, like alpine, getpwuid()
returns NULL, and errno is ENOENT, this patch fix crash
caused by this situation.
Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
2020-06-04 19:36:15 +08:00
Tianjia Zhang
e8c48161b5
pal: Fix typo error in saving token file
...
The address of the `token` should be used by fwrite().
Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
2020-06-04 19:33:57 +08:00
He Sun
eb4bb860ce
Add the unix socket support for sendto system call
2020-06-03 17:57:38 +08:00
He Sun
987e06a458
Move networking system call interfaces to net module
2020-06-03 17:57:38 +08:00
Hui, Chunyang
ed664d1143
Fix sched set/get affinity wrong behaviour
...
1. Fix child process not inherit affinity from parent process
2. Add warning for buffer length gap with kernel when getaffinity
2020-06-02 17:36:36 +08:00
YiLin.Li
e59ba66ccf
Update RunE Quick Start doc
...
1. Update CentOS dockerimage to 7.5
2. Allow users to define OCCLUM_INSTANCE_DIR
2020-06-02 17:01:27 +08:00
Tate, Hongliang Tian
db4ed1ba80
Bump version to 0.12.1
2020-06-02 16:47:20 +08:00
LI Qing
9b611e5f00
Update musl to v1.1.24
2020-06-02 05:39:29 +00:00
Hui, Chunyang
0a6b782769
Enable format check for travis CI
2020-06-01 10:26:40 +00:00
Hui, Chunyang
73b4f8b08c
Add support for PAL API v2
2020-05-29 05:26:38 +00:00
LI Qing
e6996f3c45
Add mremap system call
2020-05-29 03:38:49 +00:00
LI Qing
c27a94194f
Polish the Golang demo with Gin web framework
2020-05-29 02:03:41 +00:00
Hui, Chunyang
c1911e6585
Add demo for shell (FISH) script
2020-05-28 19:55:09 +08:00
Hui, Chunyang
5b695c9539
Format c/c++ files in src, tools and test
2020-05-27 07:09:18 +00:00
Hui, Chunyang
03ba13aec7
Add "make format" and "make format-check" to check format for c/c++ files
2020-05-27 07:08:59 +00:00
He Sun
cd2f13ae54
Refactor select syscall
...
1. Substitute the underlying poll OCall to select OCall to update the
timeout argument correctly.
2. Add more checks for the inputs.
2020-05-26 11:44:46 +08:00
Hui, Chunyang
c14ee62678
Add untrusted environment variable override
...
Add "untrusted" sections for environment variables defined in Occlum.json. Environment
variable defined in "default" will be shown in libos directly. Environment variable
defined in "untrusted" can be passed from occlum run or PAL layer and can override
the value in "default" and thus is considered "untrusted".
2020-05-25 03:14:54 +00:00
Tate, Hongliang Tian
acc3eb019f
Add two figures to README.md
2020-05-22 16:57:01 +08:00
He Sun
b29aa1d6d0
Add the Occlum-compatible Rust toolchains and a demo
2020-05-22 14:36:11 +08:00
Hui, Chunyang
bc6002f6dd
Add counters for passes and failures in test
...
Also exit with error if the fail number is not 0.
2020-05-22 14:23:20 +08:00
Hui, Chunyang
dadffb9f17
Fix sendfile syscall write buffer length
2020-05-21 17:20:12 +08:00
Hui, Chunyang
c6e0e06768
Clean up the build files generated in src/exec
2020-05-21 08:54:42 +00:00
LI Qing
f193f271a4
Update docker file for CentOS
2020-05-21 02:14:00 +00:00