3d7532c906
checked auxv for what to handle
2025-12-16 23:26:30 +01:00
5d146140b9
limit warning logs in disassembler
2025-12-16 23:01:52 +01:00
7161b6d1a2
vdso support
2025-12-16 22:46:58 +01:00
7eb5601eb6
factor out patching an elf from loading it to prepare vdso
2025-12-16 22:40:45 +01:00
1557b82c1d
documentation
2025-12-16 11:29:00 +01:00
3633346d53
support rt_sigreturn
2025-12-16 11:18:36 +01:00
08f21c06fb
add todo list
2025-12-16 11:06:38 +01:00
7186905ad2
update readme
2025-12-16 10:42:27 +01:00
8322ddba3b
refactoring
2025-12-15 16:19:43 +01:00
85a07116af
fork test
2025-12-15 15:59:34 +01:00
0a282259e3
fork-like clone test
2025-12-15 15:52:10 +01:00
33ce01d56d
first working real clone call
2025-12-15 15:51:50 +01:00
403301a06e
clone with fork-like behaviour
2025-12-15 15:10:42 +01:00
1b109ab5aa
save return address to patch
2025-12-15 11:32:28 +01:00
d0c227faa8
minor refactoring
2025-12-15 11:31:12 +01:00
f4064aff89
clone tests to help debugging
2025-12-12 14:07:00 +01:00
d3271963a8
some tests
2025-12-12 14:06:14 +01:00
b73ac766bf
need to compile with llvm because self-hosted doesn't work with asm
2025-12-12 09:21:09 +01:00
3211a7705b
revert Range compare
2025-12-11 12:33:56 +01:00
da69c60ffd
/proc/self/exe support
2025-12-11 12:25:52 +01:00
9ac107b398
respect /proc/sys/vm/mmap_min_addr
2025-12-11 11:56:01 +01:00
ef6cd851f7
remove unnecessary labels
2025-12-10 11:42:41 +01:00
557c98917c
support lto
2025-12-10 11:40:24 +01:00
c32cd74628
syscall tracing skeleton
2025-12-10 10:51:52 +01:00
a8f55f6d63
replace greedy strategy with a configurable count strategy
2025-12-09 07:51:16 +01:00
8d907f071c
convert Patcher to a global singleton
...
Migrates Patcher state to global variables and uses std.once for initialization.
This is preparing for future syscall tracing, which requires static access to
the patching context across the runtime to be accessed by flicken.
2025-12-09 07:07:22 +01:00
9d4f325a2c
enable lto for release builds
2025-12-08 15:07:57 +01:00
0788dd30f2
allow greedy allocation for faster patching
2025-12-08 15:03:44 +01:00
49ae70ec2c
try other allocation for relocation overflow
2025-12-08 09:56:00 +01:00
1922669c53
exlusive upper bound
2025-12-08 09:54:29 +01:00
434681eeb8
minor
2025-12-04 12:09:17 +01:00
9f42d161e9
neighbor eviction
2025-12-03 16:44:29 +01:00
6be43e1ff5
binary search in findAllocation
2025-12-03 15:51:15 +01:00
114157ccb7
respect mmap_min_addr
2025-12-03 13:14:48 +01:00
673ad2a33b
don't provide negative addresses
2025-12-03 13:11:56 +01:00
96b192f4af
allow negative jumps
2025-12-03 10:33:42 +01:00
b46bfc8dd7
stats
2025-12-03 10:33:01 +01:00
3ee245ba5f
successor trampoline shouldn't touch target one
2025-12-02 17:46:28 +01:00
d3788d132d
save instruction starts
2025-12-02 17:45:39 +01:00
2d19460095
fix relocation failures for smaller instructions
2025-12-02 17:45:20 +01:00
4bb03e8312
gitignore
2025-12-02 15:27:31 +01:00
5199678d2d
factor out patch tactics
2025-12-02 15:27:00 +01:00
0b330bedd2
speedup loading
2025-12-02 14:21:40 +01:00
c134c3b7cc
successor eviction
2025-12-02 14:21:21 +01:00
7c1e195402
split finding allocation range from actually allocating
2025-11-28 15:37:41 +01:00
c056457e97
small fix
2025-11-28 14:09:22 +01:00
5e81dfd69a
locked bytes
2025-11-28 14:00:32 +01:00
0f366c490e
applyPatch extracted
2025-11-28 14:00:17 +01:00
eaf2695dcd
statistics
2025-11-28 13:58:13 +01:00
64909ab1f1
rip relative instructions
2025-11-27 15:22:06 +01:00