From a4ef2fa1f1e139aebb666e9f62a571841f930f29 Mon Sep 17 00:00:00 2001 From: "Moe Charm (CI)" Date: Sun, 16 Nov 2025 01:12:57 +0900 Subject: [PATCH] =?UTF-8?q?Phase=2015=20=E5=AE=8C=E4=BA=86:=20CURRENT=5FTA?= =?UTF-8?q?SK=E6=9B=B4=E6=96=B0=20-=20=E3=83=99=E3=83=B3=E3=83=81=E3=83=9E?= =?UTF-8?q?=E3=83=BC=E3=82=AF=E7=B5=90=E6=9E=9C=E8=A8=98=E9=8C=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Phase 15 Box Separation / Wrapper Domain Check 完了を記録: - 99.29% BenchMeta 正常解放 (domain check 成功) - 0.71% page-aligned leak (acceptable tradeoff) - Performance: 14.9-16.6M ops/s (stable, crash-free) - vs System malloc: 18.1% (5.5倍差) Next: Phase 16 - Tiny守備範囲最適化 (512/1024B → Mid へ移す A/B) --- CURRENT_TASK.md | 126 +++++++++++++++++++++++++++++++++++++++++++--- perf.data.off | Bin 0 -> 94032 bytes perf.data.off.old | Bin 0 -> 42256 bytes perf.data.on | Bin 0 -> 155208 bytes perf.data.on.old | Bin 0 -> 40564 bytes 5 files changed, 120 insertions(+), 6 deletions(-) create mode 100644 perf.data.off create mode 100644 perf.data.off.old create mode 100644 perf.data.on create mode 100644 perf.data.on.old diff --git a/CURRENT_TASK.md b/CURRENT_TASK.md index 639d43fe..9e1204a0 100644 --- a/CURRENT_TASK.md +++ b/CURRENT_TASK.md @@ -1,9 +1,11 @@ -# CURRENT TASK – Phase 14 (TinyUltraHot / C2/C3 Ultra-Fast Path) +# CURRENT TASK – Phase 15 (Box Separation / Wrapper Domain Check) -**Date**: 2025-11-15 -**Status**: ✅ TinyUltraHot 実装完了 (+21-36% on C2/C3 workloads), Phase 13 TinyHeapV2 = 安全な stub +**Date**: 2025-11-16 +**Status**: ✅ Phase 15 完了 - Box 境界違反を修正、99.29% BenchMeta 正常解放、crash-free 安定動作 **Owner**: Claude Code → 実装完了 +**Next**: Phase 16 - Tiny 守備範囲の最適化 (512/1024B を Mid に移す A/B テスト) + --- ## 1. 全体の今どこ @@ -169,14 +171,126 @@ typedef struct { - 16/32/64B fixed-size (100K) で ±1% 以内 → hook オーバーヘッドはほぼゼロ。 - `alloc_calls` は 200K まで増えるが `mag_hits=0`(supply なしのため)。 -**要点:** TinyHeapV2 は「壊さず差し込めた L0 stub」。 +**要点:** TinyHeapV2 は「壊さず差し込めた L0 stub」。 これから **supply をどう設計するか** が Phase 13-B の主題。 --- -## 3. 最近のバグ修正・仕様調整(もう触らなくてよい箱) +## 3. Phase 15: Box Separation / Wrapper Domain Check (2025-11-16) ✅ -### 3.1 Tiny / Mid サイズ境界ギャップ修正(完了) +### 3.1 問題発見 - Box 境界違反 + +**ChatGPT 先生の分析**: +- free() wrapper が**無条件で全ポインタを hak_free_at() に流していた** +- BenchMeta の slots[] (外部アロケーション) も CoreAlloc (hakmem) に侵入 ← **箱侵犯!** +- LD_PRELOAD が `__libc_free()` も傍受するため、allocation 側の修正だけでは不十分 + +**症状**: +- Page-aligned pointer (0x...000) が ExternalGuard まで到達 +- SuperSlab registry lookup 失敗 → crash or leak +- 0.84% memory leak (BenchMeta slots[] が解放されていない) + +### 3.2 実装: Wrapper Domain Check + +**戦略** (User 提案 + ChatGPT レビュー): +1. **Allocation 側**: BENCH_META_CALLOC/FREE で分離 (`bench_random_mixed.c`) +2. **Wrapper 側**: Domain check で hakmem vs external を識別 ← **本質的修正** + +**実装詳細** (`core/box/hak_wrappers.inc.h:227-256`): +```c +// Phase 15: Domain check - 1-byte header 検査で hakmem vs external を分離 +uintptr_t offset_in_page = (uintptr_t)ptr & 0xFFF; +if (offset_in_page > 0) { + // Not page-aligned → ptr-1 を安全に読める + uint8_t header = *((uint8_t*)ptr - 1); + if ((header & 0xF0) == 0xA0 || (header & 0xF0) == 0xB0) { + // HEADER_MAGIC found → hakmem Tiny allocation + hak_free_at(ptr, ...); // ✅ CoreAlloc へ + } else { + // No magic → external/BenchMeta + __libc_free(ptr); // ✅ __libc_free へ + } +} else { + // Page-aligned → full classification (safe fallback) + hak_free_at(ptr, ...); +} +``` + +### 3.3 Results + +**Stability** (500K iterations): +- ✅ **No crashes** - crash-free stable operation +- ✅ **99.29% BenchMeta correctly freed** via `__libc_free()` +- ⚠️ **0.71% leak** - page-aligned fallthrough (acceptable tradeoff) + +**Performance** (Random Mixed, 500K iterations): +| Size | Before Fix | After Fix | Change | +|------|-----------|-----------|--------| +| 128B | - | 16.64M ops/s | - | +| 256B | 15.9M ops/s | 16.17M ops/s | **+1.7%** | +| 512B | - | 14.94M ops/s | - | +| 1024B | - | 15.11M ops/s | - | + +**vs System malloc** (256B): 16.17M vs 89.58M ops/s = **18.1%** (5.5倍遅い) + +### 3.4 0.71% Leak 詳細 + +**10K iterations 分析**: +- Total: 10,000 slots[] allocations +- ExternalGuard calls: 71 +- **Leak rate: 0.71%** + +**原因**: +- 71個の slots[] がページ境界に配置 (random, system allocator 依存) +- Page-aligned では ptr-1 を読むと SEGV リスク → full classification へ +- ExternalGuard まで到達 → leak (crash 回避のための安全な tradeoff) + +**99.29% の成功**: +- ヘッダチェック成功 → external と認識 +- `__libc_free()` へ正しくルーティング ✅ + +### 3.5 Files Modified + +1. **core/box/hak_wrappers.inc.h** (lines 227-256) + - Domain check logic with 1-byte header inspection + - Split routing: hakmem → hak_free_at(), external → __libc_free() + +2. **core/box/external_guard_box.h** (lines 121-145) + - Conservative unknown pointer handling (leak instead of crash) + - Enhanced debug logging + +3. **core/hakmem_super_registry.h** (line 28) + - SUPER_MAX_PROBE: 8 → 32 (hash collision tolerance) + +4. **bench_random_mixed.c** (lines 15-25, 46, 99) + - BENCH_META_CALLOC/FREE macros (allocation side separation) + +### 3.6 Lessons Learned + +**LD_PRELOAD 傍受範囲**: +- `__libc_free()` も傍受される (内部からの呼び出しも wrapper 経由) +- → Wrapper 自体に defense-in-depth が必要 + +**Box 分離の Defense in Depth**: +1. Allocation 側: BENCH_META_CALLOC で分離 +2. Wrapper 側: Domain check で二重防御 +3. Last resort: ExternalGuard で conservative leak + +**Page 境界 edge case**: +- ptr-1 を読むと SEGV リスク (0.71%) +- Tradeoff: leak (acceptable) vs crash (fatal) +- 安全性を優先 ✅ + +### 3.7 Documentation + +- **PHASE15_WRAPPER_DOMAIN_CHECK_FIX.md** - 完全な実装解説 + User contribution 記録 +- **PHASE15_REGISTRY_LOOKUP_INVESTIGATION.md** - SuperSlab registry 調査過程 + +--- + +## 4. 最近のバグ修正・仕様調整(もう触らなくてよい箱) + +### 4.1 Tiny / Mid サイズ境界ギャップ修正(完了) - 以前: - `TINY_MAX_SIZE = 1024` / `MID_MIN_SIZE = 8192` で 1KB–8KB が誰の担当でもなく mmap 直行。 diff --git a/perf.data.off b/perf.data.off new file mode 100644 index 0000000000000000000000000000000000000000..c5936f7857378f18c2a133da432dd9af2861d1b1 GIT binary patch literal 94032 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 z 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 literal 0 HcmV?d00001 diff --git a/perf.data.off.old b/perf.data.off.old new file mode 100644 index 0000000000000000000000000000000000000000..5b874da5ff1fdaa91b9270c1f2fb9bbc300960f2 GIT binary patch literal 42256 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