From a3631bfa3d250fee5c470ca9fb10ee3c68bf0398 Mon Sep 17 00:00:00 2001 From: blasty Date: Thu, 9 Jul 2026 11:35:24 +0200 Subject: stress paging on 10k-func binary; document scale constraints Measured against libcrypto.so.3 (10,092 funcs, biggest 52,120 insns): - list_* count cap ~700, disasm max_instructions cap ~500, then SILENT collapse to 10 (not clamped) -> must clamp client-side (use 500). - pagination must advance by len(data); next_offset=offset+count skips data. - disasm offset paging is O(offset): 6ms@0 -> 180ms@50k, no resumable cursor -> domain layer must cache windows + prefetch + over-fetch. - include_total scans whole func (~217ms on monster) -> fetch once, cache. - decompile hard-fails on huge funcs as a soft error (code=null) -> handle. - idb_open needs a writable path for the .i64. tests/stress_paging.py: durable paging benchmark harness docs/PAGING_FINDINGS.md: constraints that drive the paging layer --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index 2b1bd85..7b08e88 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,6 @@ build/ *.id2 *.nam *.til + +# large analysis targets (copied in, not source) +targets/ -- cgit v1.3.1-sl0p