diff options
| author | blasty <blasty@local> | 2026-07-09 11:35:24 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-09 11:35:24 +0200 |
| commit | 60daddf0a9477c32ed51937845e792f9229fdda4 (patch) | |
| tree | 155c0755debb7ab67dfb440052e3982458704a6f /.gitignore | |
| parent | harden client: transparent session auto-recovery + stress suite (diff) | |
| download | ida-tui-60daddf0a9477c32ed51937845e792f9229fdda4.tar.gz ida-tui-60daddf0a9477c32ed51937845e792f9229fdda4.tar.xz ida-tui-60daddf0a9477c32ed51937845e792f9229fdda4.zip | |
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
Diffstat (limited to '.gitignore')
| -rw-r--r-- | .gitignore | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -10,3 +10,6 @@ build/ *.id2 *.nam *.til + +# large analysis targets (copied in, not source) +targets/ |
