Phase 6-2.4: Fix SuperSlab free SEGV: remove guess loop and add memory readability check; add registry atomic consistency (base as _Atomic uintptr_t with acq/rel); add debug toggles (SUPER_REG_DEBUG/REQTRACE); update CURRENT_TASK with results and next steps; capture suite results.

This commit is contained in:
Moe Charm (CI)
2025-11-07 18:07:48 +09:00
parent b6d9c92f71
commit 382980d450
29 changed files with 2128 additions and 22 deletions

View File

@ -374,7 +374,7 @@ static SuperSlab* superslab_refill(int class_idx) {
g_superslab_refill_debug_once = 1;
int err = errno;
fprintf(stderr,
"[DEBUG] superslab_refill NULL detail: class=%d prev_ss=%p active=%u bitmap=0x%08x prev_meta=%p used=%u cap=%u slab_idx=%u reused_freelist=%d free_idx=%d errno=%d\n",
"[DEBUG] superslab_refill returned NULL (OOM) detail: class=%d prev_ss=%p active=%u bitmap=0x%08x prev_meta=%p used=%u cap=%u slab_idx=%u reused_freelist=%d free_idx=%d errno=%d\n",
class_idx,
(void*)prev_ss,
(unsigned)prev_active,
@ -387,6 +387,8 @@ static SuperSlab* superslab_refill(int class_idx) {
free_idx_attempted,
err);
}
// Clear errno to avoid confusion in fallback paths
errno = 0;
return NULL; // OOM
}