You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR adds pipeline documentation for the three core Lind repositories under the Contributing section.
This documentation is based on our existing pipeline settings. I would appreciate your feedback on any parts that might be incorrect or need further clarification. I'll revise it as soon as I hear back from you.
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Cage | geteuid] PASS: 1000000 calls returned 10
[Grate|geteuid] PASS
STDERR:
concurrent-request/race-test_grate.c
Success
STDOUT:
pass
STDERR:
concurrent-request/thread_race_grate.c
Success
STDOUT:
[thread_race] Registering handler for cage 2 in grate 1 with fn ptr addr: 3
[thread_race] PASS: 20 threads x 100000 calls returned 10
[thread_race] PASS
STDERR:
copy-data-between-cages/cp-stncpy_grate.c
Success
STDOUT:
[cage] pathname addr=0xfffb6ff9
[cage] pathname='random'
[Grate|open] intercepts open call: thiscage=1, arg1cage=2
[Grate|open] copied pathname: random
[cage] fd=10
STDERR:
copy-data-between-cages/cpdata_grate.c
Success
STDOUT:
[Grate|open] intercepts open call: thiscage=1, arg1cage=2
[Grate|open] copied pathname: random
[cage] fd=10
STDERR:
interposing-calls/fork-with-newret_grate.c
Success
STDOUT:
[Grate|interpose-fork] Registering fork handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-fork] Handling function ptr: 3 from cage: 1
[Grate|interpose-fork] In fork_grate 1 handler for cage: 1
[Cage] Forked process with PID: 10
[Grate|interpose-fork] PASS
STDERR:
interposing-calls/interpose-exec_grate.c
Success
STDOUT:
[Grate|interpose-exec] Registering exec handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
Exec successful, argv[1]: --execd
[Grate|interpose-exec] PASS
STDERR:
interposing-calls/interpose-exit_grate.c
Success
STDOUT:
[Grate|interpose-exit] Registering exit handler for cage 2 in grate 1 with fn ptr addr: 3
Exiting...
[Grate|interpose-exit] PASS
STDERR:
interposing-calls/interpose-fork_grate.c
Success
STDOUT:
[Grate|interpose-fork] Registering fork handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-fork] Handling function ptr: 3 from cage: 1
[Grate|interpose-fork] In fork_grate 1 handler for cage: 1
[Grate|interpose-fork] PASS
STDERR:
interposing-calls/interpose-mmap_grate.c
Success
STDOUT:
[Grate|interpose-mmap] Registering mmap handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
mmap test: PASS
[Grate|interpose-mmap] PASS
STDERR:
interposing-calls/interpose-register_grate.c
Success
STDOUT:
[Grate|interpose-register] Registering register_handler for cage 2 in grate 1 with fn ptr addr: 4
[cage] registering 107. grateid: 2 cageid: 3
[Grate|interpose-register] Handling function ptr: 4 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|geteuid] Registering geteuid handler for cage 1 in grate 1 with fn ptr addr: 3
[Grate|interpose-register] Handling function ptr: 3 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|interpose-register] PASS
STDERR:
multi-register_grate.c
Success
STDOUT:
[Grate|multi-register_grate] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 4
[Grate|multi-register_grate] Registering getuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|multi-register_grate] Handling function ptr: 4 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Grate|multi-register_grate] Handling function ptr: 3 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Cage | multi-register] PASS: geteuid=10, getuid=20
[Grate|multi-register] PASS
STDERR:
simple-tests/diff-cage-args_grate.c
Success
STDOUT:
[Grate|diff-cage-args] Handling function ptr: 3 from cage: 1
[Grate|diff-cage-args] In open_grate 1 handler for cage: 1
Hello world. FD=-1
[Grate|diff-cage-args] Handling function ptr: 4 from cage: 1
Goodbye world! ret=4321 buf=helloworld
[Grate|diff-cage-args] PASS
STDERR:
simple-tests/geteuid_grate.c
Success
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|geteuid] Handling function ptr: 3 from cage: 1
[Grate|geteuid] In geteuid_grate 1 handler for cage: 1
[Cage | geteuid] PASS: geteuid ret = 10
[Grate|geteuid] PASS
STDERR:
static harness
Test Report
Deterministic Tests
Summary
Metric
Count
Total Test Cases
3
Number of Successes
3
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
Test Results by Category
Test Case
Status
Error Type
Native Time
Wasm Time
Output
Static Tests
fork_simple.c
Success
None
0.057510s
4.404456s
Success
thread.c
Success
None
0.050562s
4.454616s
Success
tls_test.c
Success
None
0.061181s
4.482111s
Success
Fail Tests
Summary
Metric
Count
Total Test Cases
0
Number of Successes
0
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
wasm harness
Test Report
Deterministic Tests
Summary
Metric
Count
Total Test Cases
220
Number of Successes
220
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
Test Results by Category
Test Case
Status
Error Type
Native Time
Wasm Time
Output
File Tests
chartests.c
Success
None
0.049341s
0.142473s
Success
chdir_getcwd.c
Success
None
0.051936s
0.117221s
Success
chmod.c
Success
None
0.056812s
0.123462s
Success
clock_gettime_highlevel.c
Success
None
0.123127s
0.172249s
Success
clock_gettime_simple.c
Success
None
0.047665s
0.105256s
Success
cloexec.c
Success
None
0.056389s
0.131053s
Success
close.c
Success
None
0.065510s
0.139587s
Success
creat_access.c
Success
None
0.054070s
0.115761s
Success
doubleclose.c
Success
None
0.047484s
0.099034s
Success
dup.c
Success
None
0.047998s
0.117985s
Success
dup2.c
Success
None
0.052613s
0.112606s
Success
dup3.c
Success
None
0.052107s
0.117750s
Success
dupwrite.c
Success
None
0.053448s
0.111869s
Success
etc_conf.c
Success
None
0.049751s
0.118338s
Success
faccessat.c
Success
None
0.050108s
0.116639s
Success
fchdir.c
Success
None
0.055622s
0.125969s
Success
fchmod.c
Success
None
0.056495s
0.125507s
Success
fchmodat.c
Success
None
0.050545s
0.113325s
Success
fcntl.c
Success
None
0.055488s
0.132056s
Success
fcntl_dupfd.c
Success
None
0.048326s
0.110039s
Success
fdatasync.c
Success
None
0.053938s
0.112953s
Success
filetest.c
Success
None
0.054610s
0.111114s
Success
filetest1000.c
Success
None
0.063500s
0.126538s
Success
flock.c
Success
None
0.060977s
0.148227s
Success
fstat.c
Success
None
0.057899s
0.129102s
Success
fstatfs.c
Success
None
0.048780s
0.106576s
Success
fsync.c
Success
None
0.054407s
0.112005s
Success
ftruncate.c
Success
None
0.058739s
0.209905s
Success
getcwd.c
Success
None
0.053114s
0.107671s
Success
getcwd_null.c
Success
None
0.055973s
0.120413s
Success
getpgid.c
Success
None
0.049126s
0.105838s
Success
getrandom.c
Success
None
0.055021s
0.128969s
Success
ioctl.c
Success
None
0.055814s
0.119894s
Success
link.c
Success
None
0.056931s
0.155234s
Success
locale_test.c
Success
None
0.064980s
0.318228s
Success
lseek.c
Success
None
0.057418s
0.190043s
Success
lstat.c
Success
None
0.056813s
0.133354s
Success
mkdir_rmdir.c
Success
None
0.055804s
0.119724s
Success
mkfifo_test.c
Success
None
0.060119s
0.159048s
Success
mknod.c
Success
None
0.052423s
0.122969s
Success
nocancel_io.c
Success
None
0.057724s
0.139987s
Success
open.c
Success
None
0.048724s
0.103341s
Success
openat.c
Success
None
0.054790s
0.113043s
Success
path_conversion_safety.c
Success
None
0.057689s
0.134454s
Success
ppoll.c
Success
None
0.058374s
0.126841s
Success
pread_pwrite.c
Success
None
0.051842s
0.121224s
Success
preadv_pwritev.c
Success
None
0.055811s
0.130557s
Success
printf.c
Success
None
0.047770s
0.102528s
Success
prlimit64.c
Success
None
0.048486s
0.107771s
Success
read.c
Success
None
0.054467s
0.125495s
Success
readbytes.c
Success
None
0.052452s
0.111082s
Success
readdir_basic.c
Success
None
0.057308s
0.145950s
Success
readlink.c
Success
None
0.054549s
0.123874s
Success
readlinkat.c
Success
None
0.056373s
0.127640s
Success
readv_writev_test.c
Success
None
0.055318s
0.126387s
Success
rename.c
Success
None
0.055595s
0.116608s
Success
renameat.c
Success
None
0.057865s
0.133652s
Success
sc-writev.c
Success
None
0.052208s
0.113440s
Success
stat.c
Success
None
0.055572s
0.127547s
Success
statfs.c
Success
None
0.050816s
0.109026s
Success
symlink.c
Success
None
0.056433s
0.146626s
Success
sync_file_range.c
Success
None
0.054173s
0.113810s
Success
timespec_time_t_compat.c
Success
None
0.051023s
0.108720s
Success
trailing_slash.c
Success
None
0.054163s
0.121804s
Success
truncate.c
Success
None
0.055080s
0.132700s
Success
unlink.c
Success
None
0.058928s
0.154406s
Success
unlinkat.c
Success
None
0.057413s
0.136785s
Success
utimensat.c
Success
None
0.057265s
0.137379s
Success
write.c
Success
None
0.048752s
0.101188s
Success
writeloop.c
Success
None
0.055660s
0.115767s
Success
writepartial.c
Success
None
0.055599s
0.108493s
Success
writev.c
Success
None
0.055321s
0.122862s
Success
Math Tests
math_link_smoke.c
Success
None
0.058976s
0.108441s
Success
math_tests.c
Success
None
0.073401s
0.136436s
Success
printf_float.c
Success
None
0.059532s
0.138903s
Success
Memory Tests
brk.c
Success
None
0.053416s
0.113841s
Success
fork_large_memory.c
Success
None
0.084461s
0.368646s
Success
malloc.c
Success
None
0.051233s
0.102199s
Success
malloc_large.c
Success
None
0.052332s
0.103416s
Success
memcpy.c
Success
None
0.050481s
0.106205s
Success
memory_error_test.c
Success
None
0.055250s
0.132902s
Success
mmap.c
Success
None
0.048007s
0.105005s
Success
mmap_aligned.c
Success
None
0.048623s
0.117126s
Success
mmap_complicated.c
Success
None
0.055168s
0.127977s
Success
mmap_file.c
Success
None
0.055969s
0.117803s
Success
mmap_shared.c
Success
None
0.054630s
0.124304s
Success
mmaptest.c
Success
None
0.051169s
0.111099s
Success
mprotect.c
Success
None
0.049601s
0.106814s
Success
mprotect_boundary.c
Success
None
0.048304s
0.115158s
Success
mprotect_end_region.c
Success
None
0.048992s
0.109952s
Success
mprotect_middle_region.c
Success
None
0.048559s
0.112872s
Success
mprotect_multiple_times.c
Success
None
0.049638s
0.113367s
Success
mprotect_same_value.c
Success
None
0.049362s
0.110690s
Success
mprotect_spanning_regions.c
Success
None
0.050042s
0.125671s
Success
munmap_adjacent_shm.c
Success
None
0.051379s
0.126247s
Success
sbrk.c
Success
None
0.050257s
0.106071s
Success
segfault.c
Success
None
0.056534s
0.138832s
Success
shm.c
Success
None
0.054251s
0.132067s
Success
shmtest.c
Success
None
0.048201s
0.110355s
Success
thread_malloc_sequential.c
Success
None
0.056319s
0.155515s
Success
vtable.c
Success
None
0.059482s
0.123219s
Success
Networking Tests
accept4.c
Success
None
0.057994s
0.129536s
Success
dns_resolve_test.c
Success
None
0.053312s
0.116833s
Success
dnstest.c
Success
None
0.053215s
0.114227s
Success
epoll_badfd.c
Success
None
0.049451s
0.104496s
Success
epoll_edge_triggered.c
Success
None
0.211867s
0.379095s
Success
epollcreate1.c
Success
None
0.055418s
0.126730s
Success
error_handling_net.c
Success
None
0.061414s
0.189274s
Success
getaddrinfo_test.c
Success
None
0.057935s
0.150896s
Success
getaddrinfo_unspec.c
Success
None
0.057238s
0.130418s
Success
gethostname.c
Success
None
0.048443s
0.101497s
Success
getifaddrs.c
Success
None
0.055870s
0.116858s
Success
getsockname.c
Success
None
0.059297s
0.120310s
Success
getsockopt.c
Success
None
0.056952s
0.151736s
Success
ipv6_basic.c
Success
None
0.057792s
0.153262s
Success
makepipe.c
Success
None
0.048091s
0.100551s
Success
nonblocking_eagain.c
Success
None
0.058745s
0.161631s
Success
pipe.c
Success
None
0.055955s
0.125614s
Success
pipe2.c
Success
None
0.055095s
0.116651s
Success
pipeinput.c
Success
None
0.057096s
0.139254s
Success
pipeinput2.c
Success
None
0.057411s
0.144810s
Success
pipeonestring.c
Success
None
0.057478s
0.140008s
Success
pipepong.c
Success
None
0.056782s
0.143863s
Success
pipewrite.c
Success
None
0.050650s
0.112843s
Success
poll.c
Success
None
0.054713s
0.113055s
Success
recvfrom-sendto.c
Success
None
0.055188s
0.122893s
Success
sendmsg_recvmsg_test.c
Success
None
0.056348s
0.126692s
Success
serverclient.c
Success
None
0.054834s
0.129489s
Success
shutdown.c
Success
None
0.056154s
0.126226s
Success
shutdown_fork.c
Success
None
0.054677s
0.126499s
Success
simple-select.c
Success
None
0.056150s
0.140035s
Success
simple_epoll.c
Success
None
0.055206s
0.120143s
Success
socket.c
Success
None
0.052942s
0.111426s
Success
socket_cloexec.c
Success
None
0.053529s
0.110747s
Success
socket_options_advanced.c
Success
None
0.060302s
0.170802s
Success
socketepoll.c
Success
None
0.053438s
0.111576s
Success
socketpair.c
Success
None
0.053315s
0.126513s
Success
socketselect.c
Success
None
0.054001s
0.120238s
Success
udp_send_recv.c
Success
None
0.161805s
0.263677s
Success
uds-getsockname.c
Success
None
0.056460s
0.114692s
Success
uds-nb-select.c
Success
None
2.063365s
2.175369s
Success
uds-serverclient.c
Success
None
0.059316s
0.146552s
Success
uds-socketselect.c
Success
None
0.054523s
0.123141s
Success
uds_listen_poll.c
Success
None
1.060576s
1.156956s
Success
writev_socket.c
Success
None
0.057468s
0.150835s
Success
Process Tests
barrier_test.c
Success
None
0.053521s
0.121528s
Success
chain_thread.c
Success
None
1.055601s
1.129389s
Success
ctor_syscall_test.c
Success
None
0.047388s
0.104868s
Success
cxa_atexit_test.c
Success
None
0.051387s
0.109567s
Success
exec_non_utf8.c
Success
None
0.053246s
0.113638s
Success
execve_shebang.c
Success
None
0.055026s
0.113375s
Success
exit.c
Success
None
0.052786s
0.107005s
Success
exit_failure.c
Success
None
0.053688s
0.116866s
Success
exit_group_thread.c
Success
None
0.058626s
0.131346s
Success
exit_status_first_wins.c
Success
None
0.057289s
0.134556s
Success
flockfile_test.c
Success
None
0.054397s
0.130444s
Success
fork2malloc.c
Success
None
0.056264s
0.125273s
Success
fork_select.c
Success
None
0.053254s
0.129482s
Success
fork_simple.c
Success
None
0.052548s
0.118084s
Success
fork_syscall.c
Success
None
0.060067s
0.343147s
Success
fork_tls_ctype.c
Success
None
0.057026s
0.142570s
Success
forkandopen.c
Success
None
0.057171s
0.135655s
Success
forkdup.c
Success
None
0.058548s
0.128712s
Success
forkexecuid.c
Success
None
0.053594s
0.133743s
Success
forkexecv-arg.c
Success
None
0.053537s
0.124540s
Success
forkexecv.c
Success
None
0.051104s
0.121346s
Success
forkfiles.c
Success
None
0.055141s
0.130226s
Success
forkmalloc.c
Success
None
0.056250s
0.122115s
Success
forknodup.c
Success
None
0.055849s
0.132416s
Success
function-ptr.c
Success
None
0.050427s
0.106031s
Success
getegid_syscall.c
Success
None
0.055096s
0.273228s
Success
getgid_syscall.c
Success
None
0.056178s
0.274773s
Success
getpid.c
Success
None
0.048651s
0.101461s
Success
getpid_syscall.c
Success
None
0.057148s
0.288533s
Success
getppid.c
Success
None
0.055723s
0.121588s
Success
getppid_syscall.c
Success
None
0.057837s
0.241417s
Success
getuid.c
Success
None
0.055191s
0.111009s
Success
getuid_syscall.c
Success
None
0.053945s
0.176696s
Success
hello-arg.c
Success
None
0.046919s
0.104984s
Success
hello.c
Success
None
0.046176s
0.098840s
Success
longjmp.c
Success
None
0.046752s
0.104987s
Success
mutex.c
Success
None
2.056836s
2.129783s
Success
printf_deadlock_smoke.c
Success
None
0.061749s
0.149647s
Success
printf_thread_test.c
Success
None
0.052993s
0.127667s
Success
sem_forks.c
Success
None
0.057228s
0.140790s
Success
setsid.c
Success
None
0.048170s
0.101707s
Success
template.c
Success
None
0.054423s
0.146276s
Success
test_exec_nofork.c
Success
None
0.053031s
0.120132s
Success
test_unlink_open_file.c
Success
None
0.050543s
0.105166s
Success
thread-guard.c
Success
None
0.052812s
0.122608s
Success
thread-test.c
Success
None
0.051009s
0.110303s
Success
thread.c
Success
None
0.050354s
0.110585s
Success
thread_cageid_race.c
Success
None
0.051776s
0.164717s
Success
tls_test.c
Success
None
0.053517s
0.126619s
Success
uname.c
Success
None
0.048930s
0.102519s
Success
wait.c
Success
None
0.052433s
0.127020s
Success
waitpid_anychild.c
Success
None
0.055303s
0.123911s
Success
waitpid_syscall.c
Success
None
1.056167s
1.171645s
Success
waitpid_wnohang.c
Success
None
0.055703s
0.126124s
Success
Signal Tests
alarm.c
Success
None
7.053987s
7.146640s
Success
eintr_fork_signal.c
Success
None
1.057005s
1.139431s
Success
kill.c
Success
None
1.055994s
1.127150s
Success
setitimer.c
Success
None
7.056005s
7.148678s
Success
sigalrm.c
Success
None
2.055698s
2.134692s
Success
sigaltstack.c
Success
None
0.058071s
0.126386s
Success
sigchld.c
Success
None
1.056057s
1.125471s
Success
signal-fork.c
Success
None
4.056846s
4.131207s
Success
signal-simple.c
Success
None
0.055887s
0.116124s
Success
signal_SIGCHLD.c
Success
None
0.053671s
0.127528s
Success
signal_fork.c
Success
None
0.052932s
0.130344s
Success
signal_int_ignored.c
Success
None
2.058069s
2.124547s
Success
signal_kill_cleanup.c
Success
None
1.056946s
1.121480s
Success
signal_procmask.c
Success
None
0.052570s
0.117905s
Success
signal_read_interrupt.c
Success
None
0.564531s
0.633489s
Success
signal_recursive.c
Success
None
0.050928s
0.119807s
Success
signal_sa_mask.c
Success
None
0.050160s
0.112459s
Success
signal_select_interrupt.c
Success
None
0.560594s
0.637226s
Success
signal_write_interrupt.c
Success
None
1.057951s
1.135684s
Success
sigpipe.c
Success
None
1.058306s
1.133480s
Success
sigprocmask.c
Success
None
1.056312s
1.121003s
Success
Fail Tests
Summary
Metric
Count
Total Test Cases
4
Number of Successes
4
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
Also, just for my understanding, does lind-wasm GHA pickup tests from the lind-wasm/tests folder? When we add new tests through PR's, once the PR is merged, would GHA automatically pickup those tests?
difference between the dev image and the release image:
The dev image includes the full source code, a debug build, and debugging tools so developers can debug directly inside the container. It also serves as the base image for apps and grates.
The release image contains only the toolchain without source code, and is intended for running tests.
I'm not sure about how to skip tests in GHA yet — I'll look into it and follow up.
Yes, the e2e pipeline picks up tests from the "lind-wasm/tests" folder. The test stage in Dockerfile.e2e copies the tests folder directly into the container and runs them via make test. However, I'll need to look further into exactly which tests are covered.
@qianxichen233, @tashabits
Could you help me understand the difference between what the e2e pipeline tests and what the harness-based tests cover? It looks like you're working on a test CI using a harness.
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Cage | geteuid] PASS: 1000000 calls returned 10
[Grate|geteuid] PASS
STDERR:
concurrent-request/race-test_grate.c
Success
STDOUT:
pass
STDERR:
concurrent-request/thread_race_grate.c
Success
STDOUT:
[thread_race] Registering handler for cage 2 in grate 1 with fn ptr addr: 3
[thread_race] PASS: 20 threads x 100000 calls returned 10
[thread_race] PASS
STDERR:
copy-data-between-cages/cp-stncpy_grate.c
Success
STDOUT:
[cage] pathname addr=0xfffb6ff9
[cage] pathname='random'
[Grate|open] intercepts open call: thiscage=1, arg1cage=2
[Grate|open] copied pathname: random
[cage] fd=10
STDERR:
copy-data-between-cages/cpdata_grate.c
Success
STDOUT:
[Grate|open] intercepts open call: thiscage=1, arg1cage=2
[Grate|open] copied pathname: random
[cage] fd=10
STDERR:
interposing-calls/fork-with-newret_grate.c
Success
STDOUT:
[Grate|interpose-fork] Registering fork handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-fork] Handling function ptr: 3 from cage: 1
[Grate|interpose-fork] In fork_grate 1 handler for cage: 1
[Cage] Forked process with PID: 10
[Grate|interpose-fork] PASS
STDERR:
interposing-calls/interpose-exec_grate.c
Success
STDOUT:
[Grate|interpose-exec] Registering exec handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
Exec successful, argv[1]: --execd
[Grate|interpose-exec] PASS
STDERR:
interposing-calls/interpose-exit_grate.c
Success
STDOUT:
[Grate|interpose-exit] Registering exit handler for cage 2 in grate 1 with fn ptr addr: 3
Exiting...
[Grate|interpose-exit] PASS
STDERR:
interposing-calls/interpose-fork_grate.c
Success
STDOUT:
[Grate|interpose-fork] Registering fork handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-fork] Handling function ptr: 3 from cage: 1
[Grate|interpose-fork] In fork_grate 1 handler for cage: 1
[Grate|interpose-fork] PASS
STDERR:
interposing-calls/interpose-mmap_grate.c
Success
STDOUT:
[Grate|interpose-mmap] Registering mmap handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
mmap test: PASS
[Grate|interpose-mmap] PASS
STDERR:
interposing-calls/interpose-register_grate.c
Success
STDOUT:
[Grate|interpose-register] Registering register_handler for cage 2 in grate 1 with fn ptr addr: 4
[cage] registering 107. grateid: 2 cageid: 3
[Grate|interpose-register] Handling function ptr: 4 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|geteuid] Registering geteuid handler for cage 1 in grate 1 with fn ptr addr: 3
[Grate|interpose-register] Handling function ptr: 3 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|interpose-register] PASS
STDERR:
multi-register_grate.c
Success
STDOUT:
[Grate|multi-register_grate] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 4
[Grate|multi-register_grate] Registering getuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|multi-register_grate] Handling function ptr: 4 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Grate|multi-register_grate] Handling function ptr: 3 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Cage | multi-register] PASS: geteuid=10, getuid=20
[Grate|multi-register] PASS
STDERR:
simple-tests/copy-handler-table_grate.c
Success
STDOUT:
[Grate|copy-handler-table] Registering geteuid handler for cage 2 in grate 1
[Grate|copy-handler-table] geteuid handler invoked for cage 1
[Grate|copy-handler-table] geteuid handler invoked for cage 1
[Cage|copy-handler-table] PASS: child inherited handler, then overwrite changed geteuid to 0
[Cage|copy-handler-table] PASS: parent=123 child_exit=0
[Grate|copy-handler-table] PASS
STDERR:
simple-tests/diff-cage-args_grate.c
Success
STDOUT:
[Grate|diff-cage-args] Handling function ptr: 3 from cage: 1
[Grate|diff-cage-args] In open_grate 1 handler for cage: 1
Hello world. FD=-1
[Grate|diff-cage-args] Handling function ptr: 4 from cage: 1
Goodbye world! ret=4321 buf=helloworld
[Grate|diff-cage-args] PASS
STDERR:
simple-tests/geteuid_grate.c
Success
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|geteuid] Handling function ptr: 3 from cage: 1
[Grate|geteuid] In geteuid_grate 1 handler for cage: 1
[Cage | geteuid] PASS: geteuid ret = 10
[Grate|geteuid] PASS
STDERR:
static harness
Test Report
Deterministic Tests
Summary
Metric
Count
Total Test Cases
3
Number of Successes
3
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
Test Results by Category
Test Case
Status
Error Type
Native Time
Wasm Time
Output
Static Tests
fork_simple.c
Success
None
0.054451s
4.102624s
Success
thread.c
Success
None
0.046459s
4.165056s
Success
tls_test.c
Success
None
0.050588s
4.173931s
Success
Fail Tests
Summary
Metric
Count
Total Test Cases
0
Number of Successes
0
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
wasm harness
Test Report
Deterministic Tests
Summary
Metric
Count
Total Test Cases
233
Number of Successes
233
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
Test Results by Category
Test Case
Status
Error Type
Native Time
Wasm Time
Output
Dylink Tests
basic.c
Success
None
0.050419s
0.120917s
Success
dlopen_fork.c
Success
None
0.052568s
0.144760s
Success
dlopen_thread.c
Success
None
0.051421s
0.141943s
Success
double_fork_dlopen.c
Success
None
0.054763s
0.194027s
Success
fork_dlopen.c
Success
None
0.051117s
0.146156s
Success
longjmp_dlopen.c
Success
None
0.049903s
0.137952s
Success
rdynamic_main.c
Success
None
0.050465s
0.139213s
Success
File Tests
chartests.c
Success
None
0.047944s
0.154229s
Success
chdir_getcwd.c
Success
None
0.047699s
0.120413s
Success
chmod.c
Success
None
0.054117s
0.135406s
Success
clock_gettime_highlevel.c
Success
None
0.118210s
0.167134s
Success
clock_gettime_simple.c
Success
None
0.042314s
0.109196s
Success
cloexec.c
Success
None
0.052951s
0.148325s
Success
close.c
Success
None
0.062352s
0.142242s
Success
creat_access.c
Success
None
0.054285s
0.123640s
Success
doubleclose.c
Success
None
0.044104s
0.101321s
Success
dup.c
Success
None
0.045143s
0.119043s
Success
dup2.c
Success
None
0.050319s
0.118818s
Success
dup3.c
Success
None
0.049436s
0.121309s
Success
dupwrite.c
Success
None
0.052213s
0.123498s
Success
etc_conf.c
Success
None
0.051349s
0.130922s
Success
faccessat.c
Success
None
0.046499s
0.122626s
Success
fchdir.c
Success
None
0.055139s
0.133629s
Success
fchmod.c
Success
None
0.053865s
0.133487s
Success
fchmodat.c
Success
None
0.046349s
0.116802s
Success
fcntl.c
Success
None
0.050320s
0.134232s
Success
fcntl_dupfd.c
Success
None
0.045099s
0.111313s
Success
fdatasync.c
Success
None
0.057409s
0.130130s
Success
filetest.c
Success
None
0.051189s
0.116478s
Success
filetest1000.c
Success
None
0.060650s
0.130675s
Success
flock.c
Success
None
0.059090s
0.174339s
Success
fstat.c
Success
None
0.054934s
0.137448s
Success
fstatfs.c
Success
None
0.045739s
0.115502s
Success
fsync.c
Success
None
0.049565s
0.113945s
Success
ftruncate.c
Success
None
0.054321s
0.216647s
Success
getcwd.c
Success
None
0.049667s
0.111356s
Success
getcwd_null.c
Success
None
0.054421s
0.128537s
Success
getpgid.c
Success
None
0.044151s
0.105229s
Success
getrandom.c
Success
None
0.052299s
0.133930s
Success
ioctl.c
Success
None
0.058483s
0.125464s
Success
link.c
Success
None
0.056177s
0.160224s
Success
locale_test.c
Success
None
0.064725s
0.318716s
Success
lseek.c
Success
None
0.056610s
0.197956s
Success
lstat.c
Success
None
0.056855s
0.143765s
Success
mkdir_rmdir.c
Success
None
0.051014s
0.122221s
Success
mkfifo_test.c
Success
None
0.056734s
0.174008s
Success
mknod.c
Success
None
0.052283s
0.132261s
Success
nocancel_io.c
Success
None
0.055371s
0.144670s
Success
open.c
Success
None
0.047582s
0.114857s
Success
openat.c
Success
None
0.045554s
0.118203s
Success
path_conversion_safety.c
Success
None
0.054731s
0.137975s
Success
ppoll.c
Success
None
0.055863s
0.132558s
Success
pread_pwrite.c
Success
None
0.050715s
0.120846s
Success
preadv_pwritev.c
Success
None
0.054188s
0.137922s
Success
printf.c
Success
None
0.044651s
0.107054s
Success
prlimit64.c
Success
None
0.045480s
0.112584s
Success
read.c
Success
None
0.053439s
0.131324s
Success
readbytes.c
Success
None
0.047255s
0.113898s
Success
readdir_basic.c
Success
None
0.055288s
0.151910s
Success
readlink.c
Success
None
0.052004s
0.126455s
Success
readlinkat.c
Success
None
0.054818s
0.146013s
Success
readv_writev_test.c
Success
None
0.053514s
0.132178s
Success
rename.c
Success
None
0.056731s
0.125259s
Success
renameat.c
Success
None
0.054704s
0.138701s
Success
sc-writev.c
Success
None
0.049032s
0.119138s
Success
stat.c
Success
None
0.051548s
0.132273s
Success
statfs.c
Success
None
0.047125s
0.110621s
Success
symlink.c
Success
None
0.056415s
0.154402s
Success
sync_file_range.c
Success
None
0.048522s
0.115876s
Success
timespec_time_t_compat.c
Success
None
0.051185s
0.113480s
Success
trailing_slash.c
Success
None
0.051137s
0.127486s
Success
truncate.c
Success
None
0.051876s
0.140757s
Success
unlink.c
Success
None
0.056303s
0.157434s
Success
unlinkat.c
Success
None
0.053451s
0.138511s
Success
utimensat.c
Success
None
0.059926s
0.154412s
Success
write.c
Success
None
0.046225s
0.104809s
Success
writeloop.c
Success
None
0.053837s
0.122528s
Success
writepartial.c
Success
None
0.053858s
0.115093s
Success
writev.c
Success
None
0.052448s
0.126187s
Success
Math Tests
math_link_smoke.c
Success
None
0.054595s
0.110801s
Success
math_tests.c
Success
None
0.058366s
0.138715s
Success
printf_float.c
Success
None
0.055515s
0.135901s
Success
Memory Tests
brk.c
Success
None
0.066462s
0.157227s
Success
fork_large_memory.c
Success
None
0.090604s
0.489366s
Success
malloc.c
Success
None
0.048186s
0.113039s
Success
malloc_large.c
Success
None
0.071677s
0.177381s
Success
memcpy.c
Success
None
0.072489s
0.171244s
Success
memory_error_test.c
Success
None
0.055381s
0.174997s
Success
mmap.c
Success
None
0.062224s
0.158362s
Success
mmap_address_truncation.c
Success
None
0.059851s
0.156354s
Success
mmap_aligned.c
Success
None
0.052689s
0.130070s
Success
mmap_complicated.c
Success
None
0.066823s
0.165107s
Success
mmap_file.c
Success
None
0.068181s
0.171974s
Success
mmap_shared.c
Success
None
0.051258s
0.149380s
Success
mmaptest.c
Success
None
0.059489s
0.168354s
Success
mprotect.c
Success
None
0.046857s
0.117439s
Success
mprotect_boundary.c
Success
None
0.048298s
0.125643s
Success
mprotect_end_region.c
Success
None
0.048450s
0.122068s
Success
mprotect_middle_region.c
Success
None
0.064745s
0.168492s
Success
mprotect_multiple_times.c
Success
None
0.074555s
0.132302s
Success
mprotect_same_value.c
Success
None
0.062443s
0.267200s
Success
mprotect_spanning_regions.c
Success
None
0.052721s
0.146622s
Success
munmap_adjacent_shm.c
Success
None
0.055071s
0.144886s
Success
sbrk.c
Success
None
0.051640s
0.120305s
Success
segfault.c
Success
None
0.054427s
0.156814s
Success
shm.c
Success
None
0.091126s
0.215592s
Success
shmtest.c
Success
None
0.047072s
0.115660s
Success
thread_malloc_sequential.c
Success
None
0.079966s
0.317351s
Success
vtable.c
Success
None
0.082671s
0.193579s
Success
Networking Tests
accept4.c
Success
None
0.056009s
0.136259s
Success
dns_resolve_test.c
Success
None
0.050150s
0.121390s
Success
dnstest.c
Success
None
0.049950s
0.118359s
Success
epoll_badfd.c
Success
None
0.047490s
0.114353s
Success
epoll_edge_triggered.c
Success
None
0.209348s
0.383071s
Success
epollcreate1.c
Success
None
0.054721s
0.132832s
Success
error_handling_net.c
Success
None
0.059854s
0.195345s
Success
getaddrinfo_test.c
Success
None
0.056627s
0.157364s
Success
getaddrinfo_unspec.c
Success
None
0.056570s
0.134612s
Success
gethostname.c
Success
None
0.044145s
0.105345s
Success
getifaddrs.c
Success
None
0.054107s
0.127835s
Success
getsockname.c
Success
None
0.052984s
0.125278s
Success
getsockopt.c
Success
None
0.055922s
0.161974s
Success
ipv6_basic.c
Success
None
0.055807s
0.158853s
Success
makepipe.c
Success
None
0.043508s
0.103072s
Success
nonblocking_eagain.c
Success
None
0.057354s
0.168447s
Success
pipe.c
Success
None
0.054318s
0.130964s
Success
pipe2.c
Success
None
0.052925s
0.120414s
Success
pipeinput.c
Success
None
0.056679s
0.155342s
Success
pipeinput2.c
Success
None
0.056297s
0.161184s
Success
pipeonestring.c
Success
None
0.055585s
0.155818s
Success
pipepong.c
Success
None
0.052433s
0.160050s
Success
pipewrite.c
Success
None
0.049936s
0.120602s
Success
poll.c
Success
None
0.052125s
0.117328s
Success
recvfrom-sendto.c
Success
None
0.053657s
0.133757s
Success
sendmsg_recvmsg_test.c
Success
None
0.053010s
0.134140s
Success
serverclient.c
Success
None
0.053068s
0.133757s
Success
shutdown.c
Success
None
0.055571s
0.133361s
Success
shutdown_fork.c
Success
None
0.053752s
0.146683s
Success
simple-select.c
Success
None
0.056521s
0.161188s
Success
simple_epoll.c
Success
None
0.053685s
0.128136s
Success
socket.c
Success
None
0.053384s
0.124222s
Success
socket_cloexec.c
Success
None
0.051148s
0.114880s
Success
socket_options_advanced.c
Success
None
0.057309s
0.178715s
Success
socketepoll.c
Success
None
0.052552s
0.120561s
Success
socketpair.c
Success
None
0.052078s
0.143892s
Success
socketselect.c
Success
None
0.051204s
0.125708s
Success
udp_send_recv.c
Success
None
0.159869s
0.279950s
Success
uds-getsockname.c
Success
None
0.053120s
0.123287s
Success
uds-nb-select.c
Success
None
2.061284s
2.192879s
Success
uds-serverclient.c
Success
None
0.057766s
0.160941s
Success
uds-socketselect.c
Success
None
0.053520s
0.150835s
Success
uds_listen_poll.c
Success
None
1.059892s
1.170214s
Success
writev_socket.c
Success
None
0.055848s
0.160572s
Success
Process Tests
barrier_test.c
Success
None
0.050247s
0.137080s
Success
chain_thread.c
Success
None
1.052559s
1.148347s
Success
ctor_syscall_test.c
Success
None
0.044824s
0.111113s
Success
cxa_atexit_test.c
Success
None
0.049503s
0.114156s
Success
exec_non_utf8.c
Success
None
0.051586s
0.121448s
Success
execve_shebang.c
Success
None
0.053084s
0.120555s
Success
exit.c
Success
None
0.049763s
0.111872s
Success
exit_failure.c
Success
None
0.066115s
0.159370s
Success
exit_group_thread.c
Success
None
0.055081s
0.157430s
Success
exit_status_first_wins.c
Success
None
0.057568s
0.157113s
Success
flockfile_test.c
Success
None
0.054486s
0.147522s
Success
fork2malloc.c
Success
None
0.054092s
0.140573s
Success
fork_select.c
Success
None
0.050799s
0.148047s
Success
fork_simple.c
Success
None
0.051998s
0.132526s
Success
fork_syscall.c
Success
None
0.058118s
0.629642s
Success
fork_tls_ctype.c
Success
None
0.054357s
0.163496s
Success
forkandopen.c
Success
None
0.054908s
0.151731s
Success
forkdup.c
Success
None
0.053794s
0.142697s
Success
forkexecuid.c
Success
None
0.051287s
0.155406s
Success
forkexecv-arg.c
Success
None
0.050506s
0.144817s
Success
forkexecv.c
Success
None
0.055362s
0.161295s
Success
forkfiles.c
Success
None
0.056142s
0.163454s
Success
forkmalloc.c
Success
None
0.053142s
0.138460s
Success
forknodup.c
Success
None
0.054680s
0.150156s
Success
function-ptr.c
Success
None
0.052192s
0.121972s
Success
getegid_syscall.c
Success
None
0.055519s
0.489572s
Success
getgid_syscall.c
Success
None
0.052253s
0.496621s
Success
getpid.c
Success
None
0.047138s
0.109563s
Success
getpid_syscall.c
Success
None
0.061529s
0.486730s
Success
getppid.c
Success
None
0.057409s
0.157599s
Success
getppid_syscall.c
Success
None
0.056439s
0.395583s
Success
getuid.c
Success
None
0.053549s
0.114561s
Success
getuid_syscall.c
Success
None
0.053550s
0.249428s
Success
hello-arg.c
Success
None
0.045964s
0.114192s
Success
hello.c
Success
None
0.042596s
0.104090s
Success
longjmp.c
Success
None
0.044777s
0.115603s
Success
mutex.c
Success
None
2.057822s
2.135843s
Success
printf_deadlock_smoke.c
Success
None
0.061432s
0.173501s
Success
printf_thread_test.c
Success
None
0.051168s
0.143351s
Success
sem_forks.c
Success
None
0.053944s
0.179542s
Success
setjmp_edge.c
Success
None
0.060617s
0.277136s
Success
setsid.c
Success
None
0.046157s
0.106360s
Success
template.c
Success
None
0.051236s
0.183002s
Success
test_crossmodule_longjmp.c
Success
None
0.053333s
0.151791s
Success
test_exec_nofork.c
Success
None
0.050862s
0.133240s
Success
test_unlink_open_file.c
Success
None
0.062794s
0.139425s
Success
thread-guard.c
Success
None
0.050593s
0.131745s
Success
thread-test.c
Success
None
0.047756s
0.124896s
Success
thread.c
Success
None
0.049164s
0.124247s
Success
thread_cageid_race.c
Success
None
0.047323s
0.295717s
Success
tls_test.c
Success
None
0.053179s
0.169458s
Success
uname.c
Success
None
0.047866s
0.109285s
Success
wait.c
Success
None
0.050391s
0.152807s
Success
waitpid_anychild.c
Success
None
0.052159s
0.136105s
Success
waitpid_syscall.c
Success
None
1.054377s
1.233610s
Success
waitpid_wnohang.c
Success
None
0.053396s
0.141138s
Success
Signal Tests
alarm.c
Success
None
7.051351s
7.153737s
Success
eintr_fork_signal.c
Success
None
1.067204s
1.153918s
Success
kill.c
Success
None
1.051580s
1.140963s
Success
pause_test.c
Success
None
1.053639s
1.152754s
Success
setitimer.c
Success
None
7.051889s
7.163458s
Success
sigalrm.c
Success
None
2.052158s
2.137401s
Success
sigaltstack.c
Success
None
0.055670s
0.135823s
Success
sigchld.c
Success
None
1.053363s
1.138688s
Success
signal-fork.c
Success
None
4.053996s
4.134949s
Success
signal-simple.c
Success
None
0.052623s
0.126504s
Success
signal_SIGCHLD.c
Success
None
0.050741s
0.147210s
Success
signal_fork.c
Success
None
0.049084s
0.141527s
Success
signal_int_ignored.c
Success
None
2.052484s
2.138213s
Success
signal_kill_cleanup.c
Success
None
1.051009s
1.130392s
Success
signal_procmask.c
Success
None
0.048630s
0.122404s
Success
signal_read_interrupt.c
Success
None
0.559519s
0.643321s
Success
signal_recursive.c
Success
None
0.050425s
0.136180s
Success
signal_sa_mask.c
Success
None
0.047837s
0.114410s
Success
signal_select_interrupt.c
Success
None
0.555979s
0.645941s
Success
signal_write_interrupt.c
Success
None
1.054095s
1.142248s
Success
sigpipe.c
Success
None
1.053788s
1.151474s
Success
sigprocmask.c
Success
None
1.051719s
1.126582s
Success
sigsuspend_test.c
Success
None
1.050395s
1.144769s
Success
test_sigsetjmp.c
Success
None
0.053517s
0.158172s
Success
Fail Tests
Summary
Metric
Count
Total Test Cases
6
Number of Successes
6
Number of Failures
0
Number of Compilation Failure Native
0
Number of Runtime Failure Native
0
Number of Segmentation Fault Native
0
Number of Timeout During Native
0
Number of Lind Wasm Compile Failure
0
Number of Lind Wasm Runtime Failure
0
Number of Lind Wasm Segmentation Failure
0
Number of Timeout During Lind Wasm run
0
Number of Unknown Failure
0
Number of C Compiler and Wasm Output mismatch
0
Number of Fail Test: Native Succeeded (Should Fail)
0
Number of Fail Test: Wasm Succeeded (Should Fail)
0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)
0
Number of Fail Test: Native Compilation Failure (Should Succeed)
0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)
0
Test Results by Category
Test Case
Status
Error Type
Native Time
Wasm Time
Output
Dylink Tests
dlerror.c
Success
None
0.043731s
0.107286s
Success
Memory Tests
invalid_access_direct.c
Success
None
0.114367s
0.119652s
Success
invalid_access_fork.c
Success
None
0.184678s
0.224754s
Success
mmap-negative1.c
Success
None
0.136136s
0.152170s
Success
mmap-negative2.c
Success
None
0.155449s
0.175924s
Success
Signal Tests
signal_resethand.c
Success
None
1.052023s
1.134116s
Success
C++ harness
Summary
Metric
Value
Total
1
Success
1
Failures
0
Compile failures
0
Runtime failures
0
Output mismatch
0
Timeouts
0
Cases
Test
Status
Error type
Native time
Wasm time
Output
tests/unit-tests/cpp/sort.cpp
Success
0.400790s
8.762610s
LIBCPP_SORT_OK 1 2 3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds pipeline documentation for the three core Lind repositories under the Contributing section.
This documentation is based on our existing pipeline settings. I would appreciate your feedback on any parts that might be incorrect or need further clarification. I'll revise it as soon as I hear back from you.
Related Issue
Closes #1111