Skip to content

Organize scripts by purpose#1237

Open
Shounak-Ghosh wants to merge 1 commit into
mainfrom
organize-scripts-dir
Open

Organize scripts by purpose#1237
Shounak-Ghosh wants to merge 1 commit into
mainfrom
organize-scripts-dir

Conversation

@Shounak-Ghosh

Copy link
Copy Markdown
Contributor

Description

This PR reorganizes the scripts/ directory to group files by their logical purpose. All existing standard commands continue to function exactly as before.

Closes #1208

What Changed

  • Directory Restructuring: Created purpose-driven subdirectories (bin/, build/, test/, generate/, data/, tools/, config/) and relocated the appropriate scripts, harnesses, and data files into them.
scripts/
  bin/           lind_compile, lind_run, lind_compile_cpp, lind-wasm-opt, cargo-lind_compile, wasip1-clang.sh
  build/         make_glibc_and_sysroot.sh, make_shared_glibc.sh, make_shared_libm.sh, make_archive.sh, extract_glibc_symbols.sh
  test/          test_runner.py, benchrunner.py, check_reports.py
  test/harnesses/  (moved from harnesses/)
  generate/      extract_versions.py, render_e2e_templates.py
  templates/     (unchanged — render_e2e_templates.py references it as CWD-relative "scripts/templates")
  data/          math-path.txt, version-path-minimal.txt, object_lists/, object_lists_final/
  tools/         add-export-tool/
  config/        rust/, lindfs-conf/, cloudbuild.yaml
  • Path & Reference Updates: Adjusted path references, repository root discovery heuristics, and relative traversals (e.g., adding extra ../ to account for the new depth) across the Makefile, Bash scripts, Python harnesses, and Dockerfiles.
  • Cleanup: Removed stale __pycache__ directories to prevent any caching of old file paths.

Verification

The following standard workflows were tested to ensure the file movements did not break existing functionality:

  • make build (Full build chain: lind-boot + sysroot resolves properly)
  • make test (All harnesses successfully discovered via the new test runner path)
  • make lindfs
  • User binaries (scripts/bin/lind_compile and scripts/bin/lind_run) correctly discover the repo root.
  • Benchmarking (scripts/test/benchrunner.py) executes successfully.

…d reference paths, clean up stale harnesses pycache, and tested that scripts work as before
@github-actions

github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

End-to-End Test Report

Test Preview

grate harness

Grate Test Report

MetricValue
Total15
Success15
Failures0
Compile Failures0
Runtime Failures0
Timeout Failures0
Missing Pair Failures0

Cases

TestStatusError TypeOutput
concurrent-request/geteuid_grate.cSuccess
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.cSuccess
STDOUT:
pass

STDERR:

concurrent-request/thread_race_grate.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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.cSuccess
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

MetricCount
Total Test Cases3
Number of Successes3
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
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 CaseStatusError TypeNative TimeWasm TimeOutput
Static Tests
fork_simple.cSuccessNone0.056558s4.089731s
Success
thread.cSuccessNone0.048614s4.176935s
Success
tls_test.cSuccessNone0.055646s4.188955s
Success
Fail Tests

Summary

MetricCount
Total Test Cases0
Number of Successes0
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
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

MetricCount
Total Test Cases232
Number of Successes232
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
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 CaseStatusError TypeNative TimeWasm TimeOutput
Dylink Tests
basic.cSuccessNone0.050535s0.118550s
Success
dlopen_fork.cSuccessNone0.051777s0.141598s
Success
dlopen_thread.cSuccessNone0.053649s0.141789s
Success
double_fork_dlopen.cSuccessNone0.055444s0.187483s
Success
fork_dlopen.cSuccessNone0.051010s0.143510s
Success
longjmp_dlopen.cSuccessNone0.050411s0.138157s
Success
rdynamic_main.cSuccessNone0.052725s0.135900s
Success
File Tests
chartests.cSuccessNone0.050287s0.148648s
Success
chdir_getcwd.cSuccessNone0.051171s0.122584s
Success
chmod.cSuccessNone0.056915s0.133830s
Success
clock_gettime_highlevel.cSuccessNone0.121131s0.166864s
Success
clock_gettime_simple.cSuccessNone0.044343s0.108066s
Success
cloexec.cSuccessNone0.054606s0.145877s
Success
close.cSuccessNone0.061507s0.143462s
Success
creat_access.cSuccessNone0.054679s0.119951s
Success
doubleclose.cSuccessNone0.045381s0.103754s
Success
dup.cSuccessNone0.047740s0.117419s
Success
dup2.cSuccessNone0.051788s0.117945s
Success
dup3.cSuccessNone0.061967s0.126737s
Success
dupwrite.cSuccessNone0.053213s0.119010s
Success
etc_conf.cSuccessNone0.048445s0.123609s
Success
faccessat.cSuccessNone0.048975s0.123773s
Success
fchdir.cSuccessNone0.056309s0.134996s
Success
fchmod.cSuccessNone0.056830s0.134149s
Success
fchmodat.cSuccessNone0.050091s0.119205s
Success
fcntl.cSuccessNone0.053075s0.134705s
Success
fcntl_dupfd.cSuccessNone0.045625s0.112529s
Success
fdatasync.cSuccessNone0.052519s0.115229s
Success
filetest.cSuccessNone0.051975s0.114712s
Success
filetest1000.cSuccessNone0.060379s0.128129s
Success
flock.cSuccessNone0.061060s0.169001s
Success
fstat.cSuccessNone0.054491s0.134082s
Success
fstatfs.cSuccessNone0.048382s0.111433s
Success
fsync.cSuccessNone0.051744s0.115098s
Success
ftruncate.cSuccessNone0.058591s0.213892s
Success
getcwd.cSuccessNone0.049117s0.111708s
Success
getcwd_null.cSuccessNone0.054358s0.126408s
Success
getpgid.cSuccessNone0.046879s0.105896s
Success
getrandom.cSuccessNone0.052533s0.132875s
Success
ioctl.cSuccessNone0.063352s0.127183s
Success
link.cSuccessNone0.058189s0.162759s
Success
locale_test.cSuccessNone0.067108s0.319692s
Success
lseek.cSuccessNone0.057178s0.196990s
Success
lstat.cSuccessNone0.057266s0.141217s
Success
mkdir_rmdir.cSuccessNone0.053511s0.125845s
Success
mkfifo_test.cSuccessNone0.058355s0.172859s
Success
mknod.cSuccessNone0.052916s0.129458s
Success
nocancel_io.cSuccessNone0.055857s0.144836s
Success
open.cSuccessNone0.047041s0.108130s
Success
openat.cSuccessNone0.049073s0.117279s
Success
path_conversion_safety.cSuccessNone0.056985s0.140500s
Success
ppoll.cSuccessNone0.057653s0.130959s
Success
pread_pwrite.cSuccessNone0.049675s0.123872s
Success
preadv_pwritev.cSuccessNone0.055475s0.139053s
Success
printf.cSuccessNone0.045198s0.102371s
Success
prlimit64.cSuccessNone0.046606s0.108663s
Success
read.cSuccessNone0.054584s0.133541s
Success
readbytes.cSuccessNone0.049737s0.111724s
Success
readdir_basic.cSuccessNone0.057021s0.154470s
Success
readlink.cSuccessNone0.053529s0.125987s
Success
readlinkat.cSuccessNone0.054757s0.131210s
Success
readv_writev_test.cSuccessNone0.056645s0.135770s
Success
rename.cSuccessNone0.056951s0.124271s
Success
renameat.cSuccessNone0.056402s0.138267s
Success
sc-writev.cSuccessNone0.054341s0.121554s
Success
stat.cSuccessNone0.054584s0.132269s
Success
statfs.cSuccessNone0.048775s0.110400s
Success
symlink.cSuccessNone0.057917s0.152810s
Success
sync_file_range.cSuccessNone0.050957s0.117512s
Success
timespec_time_t_compat.cSuccessNone0.050473s0.114113s
Success
trailing_slash.cSuccessNone0.053769s0.126596s
Success
truncate.cSuccessNone0.054668s0.143814s
Success
unlink.cSuccessNone0.056374s0.158186s
Success
unlinkat.cSuccessNone0.055356s0.140305s
Success
utimensat.cSuccessNone0.052675s0.140395s
Success
write.cSuccessNone0.047092s0.103183s
Success
writeloop.cSuccessNone0.057297s0.121100s
Success
writepartial.cSuccessNone0.054275s0.114259s
Success
writev.cSuccessNone0.054731s0.127555s
Success
Math Tests
math_link_smoke.cSuccessNone0.056733s0.111528s
Success
math_tests.cSuccessNone0.060716s0.140460s
Success
printf_float.cSuccessNone0.058022s0.137515s
Success
Memory Tests
brk.cSuccessNone0.067401s0.165540s
Success
fork_large_memory.cSuccessNone0.089584s0.491502s
Success
malloc.cSuccessNone0.061070s0.123535s
Success
malloc_large.cSuccessNone0.092522s0.200288s
Success
memcpy.cSuccessNone0.076032s0.202489s
Success
memory_error_test.cSuccessNone0.059541s0.158621s
Success
mmap.cSuccessNone0.070638s0.170870s
Success
mmap_aligned.cSuccessNone0.050525s0.146517s
Success
mmap_complicated.cSuccessNone0.057349s0.155645s
Success
mmap_file.cSuccessNone0.071294s0.153019s
Success
mmap_shared.cSuccessNone0.057123s0.171900s
Success
mmaptest.cSuccessNone0.072633s0.173891s
Success
mprotect.cSuccessNone0.051995s0.118409s
Success
mprotect_boundary.cSuccessNone0.054066s0.174760s
Success
mprotect_end_region.cSuccessNone0.065969s0.167831s
Success
mprotect_middle_region.cSuccessNone0.068575s0.188992s
Success
mprotect_multiple_times.cSuccessNone0.065323s0.121163s
Success
mprotect_same_value.cSuccessNone0.098696s0.241299s
Success
mprotect_spanning_regions.cSuccessNone0.073136s0.169306s
Success
munmap_adjacent_shm.cSuccessNone0.051989s0.136465s
Success
sbrk.cSuccessNone0.053541s0.121287s
Success
segfault.cSuccessNone0.067194s0.172880s
Success
shm.cSuccessNone0.092009s0.272530s
Success
shmtest.cSuccessNone0.050817s0.137799s
Success
thread_malloc_sequential.cSuccessNone0.106551s0.321223s
Success
vtable.cSuccessNone0.102467s0.280287s
Success
Networking Tests
accept4.cSuccessNone0.058633s0.137929s
Success
dns_resolve_test.cSuccessNone0.053228s0.124119s
Success
dnstest.cSuccessNone0.053017s0.120494s
Success
epoll_badfd.cSuccessNone0.048155s0.110128s
Success
epoll_edge_triggered.cSuccessNone0.211369s0.384662s
Success
epollcreate1.cSuccessNone0.054927s0.134757s
Success
error_handling_net.cSuccessNone0.062966s0.198872s
Success
getaddrinfo_test.cSuccessNone0.058222s0.160064s
Success
getaddrinfo_unspec.cSuccessNone0.054986s0.226342s
Success
gethostname.cSuccessNone0.047908s0.106946s
Success
getifaddrs.cSuccessNone0.055033s0.127092s
Success
getsockname.cSuccessNone0.056174s0.128426s
Success
getsockopt.cSuccessNone0.057445s0.162430s
Success
ipv6_basic.cSuccessNone0.059764s0.159691s
Success
makepipe.cSuccessNone0.046578s0.104606s
Success
nonblocking_eagain.cSuccessNone0.058956s0.167292s
Success
pipe.cSuccessNone0.057392s0.133083s
Success
pipe2.cSuccessNone0.055209s0.124715s
Success
pipeinput.cSuccessNone0.058175s0.157938s
Success
pipeinput2.cSuccessNone0.057892s0.163207s
Success
pipeonestring.cSuccessNone0.056861s0.156352s
Success
pipepong.cSuccessNone0.056239s0.159478s
Success
pipewrite.cSuccessNone0.049736s0.120098s
Success
poll.cSuccessNone0.053488s0.116504s
Success
recvfrom-sendto.cSuccessNone0.057368s0.132809s
Success
sendmsg_recvmsg_test.cSuccessNone0.054860s0.135483s
Success
serverclient.cSuccessNone0.054139s0.137061s
Success
shutdown.cSuccessNone0.057180s0.135351s
Success
shutdown_fork.cSuccessNone0.054719s0.146404s
Success
simple-select.cSuccessNone0.057315s0.156498s
Success
simple_epoll.cSuccessNone0.056316s0.129338s
Success
socket.cSuccessNone0.053359s0.119015s
Success
socket_cloexec.cSuccessNone0.053492s0.116018s
Success
socket_options_advanced.cSuccessNone0.060326s0.177114s
Success
socketepoll.cSuccessNone0.054064s0.120182s
Success
socketpair.cSuccessNone0.052744s0.139056s
Success
socketselect.cSuccessNone0.053670s0.127687s
Success
udp_send_recv.cSuccessNone0.161982s0.283241s
Success
uds-getsockname.cSuccessNone0.054370s0.119407s
Success
uds-nb-select.cSuccessNone2.063897s2.194613s
Success
uds-serverclient.cSuccessNone0.058640s0.165856s
Success
uds-socketselect.cSuccessNone0.054635s0.131126s
Success
uds_listen_poll.cSuccessNone1.061365s1.174644s
Success
writev_socket.cSuccessNone0.058641s0.162870s
Success
Process Tests
barrier_test.cSuccessNone0.053610s0.138233s
Success
chain_thread.cSuccessNone1.056181s1.151340s
Success
ctor_syscall_test.cSuccessNone0.044935s0.107583s
Success
cxa_atexit_test.cSuccessNone0.052161s0.111702s
Success
exec_non_utf8.cSuccessNone0.053419s0.118859s
Success
execve_shebang.cSuccessNone0.055814s0.141200s
Success
exit.cSuccessNone0.054463s0.111509s
Success
exit_failure.cSuccessNone0.060041s0.161946s
Success
exit_group_thread.cSuccessNone0.056079s0.154102s
Success
exit_status_first_wins.cSuccessNone0.058444s0.154617s
Success
flockfile_test.cSuccessNone0.055381s0.151006s
Success
fork2malloc.cSuccessNone0.056698s0.143047s
Success
fork_select.cSuccessNone0.056215s0.150648s
Success
fork_simple.cSuccessNone0.052540s0.133594s
Success
fork_syscall.cSuccessNone0.058734s0.626887s
Success
fork_tls_ctype.cSuccessNone0.057007s0.161861s
Success
forkandopen.cSuccessNone0.057149s0.152766s
Success
forkdup.cSuccessNone0.057010s0.148007s
Success
forkexecuid.cSuccessNone0.051983s0.155414s
Success
forkexecv-arg.cSuccessNone0.053810s0.152814s
Success
forkexecv.cSuccessNone0.095796s0.146954s
Success
forkfiles.cSuccessNone0.055999s0.145610s
Success
forkmalloc.cSuccessNone0.054950s0.137326s
Success
forknodup.cSuccessNone0.055338s0.146885s
Success
function-ptr.cSuccessNone0.051958s0.115225s
Success
getegid_syscall.cSuccessNone0.056135s0.490355s
Success
getgid_syscall.cSuccessNone0.056867s0.491573s
Success
getpid.cSuccessNone0.048246s0.107109s
Success
getpid_syscall.cSuccessNone0.057038s0.477410s
Success
getppid.cSuccessNone0.081794s0.194148s
Success
getppid_syscall.cSuccessNone0.057286s0.391235s
Success
getuid.cSuccessNone0.054291s0.118515s
Success
getuid_syscall.cSuccessNone0.053461s0.244546s
Success
hello-arg.cSuccessNone0.045604s0.111467s
Success
hello.cSuccessNone0.044858s0.103056s
Success
longjmp.cSuccessNone0.046586s0.114955s
Success
mutex.cSuccessNone2.063583s2.137211s
Success
printf_deadlock_smoke.cSuccessNone0.065380s0.173480s
Success
printf_thread_test.cSuccessNone0.052736s0.142291s
Success
sem_forks.cSuccessNone0.055995s0.180587s
Success
setjmp_edge.cSuccessNone0.061667s0.229599s
Success
setsid.cSuccessNone0.047896s0.107822s
Success
template.cSuccessNone0.054736s0.183072s
Success
test_crossmodule_longjmp.cSuccessNone0.054867s0.152246s
Success
test_exec_nofork.cSuccessNone0.053034s0.138668s
Success
test_unlink_open_file.cSuccessNone0.051570s0.113779s
Success
thread-guard.cSuccessNone0.053601s0.134151s
Success
thread-test.cSuccessNone0.049655s0.122260s
Success
thread.cSuccessNone0.049515s0.121936s
Success
thread_cageid_race.cSuccessNone0.050710s0.292424s
Success
tls_test.cSuccessNone0.052987s0.161665s
Success
uname.cSuccessNone0.048490s0.109483s
Success
wait.cSuccessNone0.051421s0.151461s
Success
waitpid_anychild.cSuccessNone0.055226s0.141019s
Success
waitpid_syscall.cSuccessNone1.055780s1.233276s
Success
waitpid_wnohang.cSuccessNone0.056094s0.141646s
Success
Signal Tests
alarm.cSuccessNone7.055831s7.155283s
Success
eintr_fork_signal.cSuccessNone1.057696s1.157373s
Success
kill.cSuccessNone1.053700s1.141233s
Success
pause_test.cSuccessNone1.056340s1.150079s
Success
setitimer.cSuccessNone7.058121s7.163143s
Success
sigalrm.cSuccessNone2.054472s2.139137s
Success
sigaltstack.cSuccessNone0.055780s0.131787s
Success
sigchld.cSuccessNone1.055474s1.160698s
Success
signal-fork.cSuccessNone4.055905s4.136728s
Success
signal-simple.cSuccessNone0.055419s0.122683s
Success
signal_SIGCHLD.cSuccessNone0.053347s0.143354s
Success
signal_fork.cSuccessNone0.050979s0.141113s
Success
signal_int_ignored.cSuccessNone2.054352s2.140948s
Success
signal_kill_cleanup.cSuccessNone1.052540s1.136520s
Success
signal_procmask.cSuccessNone0.048897s0.121397s
Success
signal_read_interrupt.cSuccessNone0.559766s0.646241s
Success
signal_recursive.cSuccessNone0.049332s0.125783s
Success
signal_sa_mask.cSuccessNone0.048938s0.115823s
Success
signal_select_interrupt.cSuccessNone0.558617s0.647057s
Success
signal_write_interrupt.cSuccessNone1.056233s1.140304s
Success
sigpipe.cSuccessNone1.058718s1.152834s
Success
sigprocmask.cSuccessNone1.053344s1.128708s
Success
sigsuspend_test.cSuccessNone1.052961s1.153167s
Success
test_sigsetjmp.cSuccessNone0.055083s0.151695s
Success
Fail Tests

Summary

MetricCount
Total Test Cases6
Number of Successes6
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
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 CaseStatusError TypeNative TimeWasm TimeOutput
Dylink Tests
dlerror.cSuccessNone0.046108s0.109034s
Success
Memory Tests
invalid_access_direct.cSuccessNone0.113511s0.120223s
Success
invalid_access_fork.cSuccessNone0.192038s0.312250s
Success
mmap-negative1.cSuccessNone0.133677s0.114080s
Success
mmap-negative2.cSuccessNone0.146706s0.178094s
Success
Signal Tests
signal_resethand.cSuccessNone1.053798s1.135203s
Success

C++ harness

Summary

MetricValue
Total1
Success1
Failures0
Compile failures0
Runtime failures0
Output mismatch0
Timeouts0

Cases

TestStatusError typeNative timeWasm timeOutput
tests/unit-tests/cpp/sort.cppSuccess0.386803s8.883818s
LIBCPP_SORT_OK 1 2 3

@qianxichen233

qianxichen233 commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

I think some of the scripts path is used in apps repo (https://github.com/Lind-Project/lind-wasm-apps/), will need a parallel PR on that side to fix path otherwise a few application compilation will be broken

@vidyalakshmir vidyalakshmir left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine! Agree what Qianxi said. We need to fix the paths to any of these scripts/binaries (like Lind-run etc) within the apps and also grates repo (if they use it).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Organize scripts directory by purpose

4 participants