Robert Allan James and Claude Sonnet 5
9142dda2d6
Build / build-amd64-iso (push) Canceled after 0s
Build / build-aarch64-iso (push) Canceled after 0s
Build / build-riscv64-img (push) Canceled after 0s
Fix use-after-free in sk_repl_idle()'s idle-tick VM resolution (FABRIC-3.md §XIII)
...
Root-caused a heap-corruption bug that reliably failed WIREBIND identity
attach on the third attach/detach cycle in one boot. sk_console_readline()
and sk_console_getkey() captured `active_vm` once from their caller and
kept passing that same (possibly long-stale) pointer to sk_repl_idle() on
every idle tick serviced while blocked waiting for input. If the VM it
pointed at was killed (WIREBIND detach) mid-block, the existing bailout
only checked a generic "is anyone attached" boolean -- masked as soon as a
different identity attached next -- so blk_vm_flush_all() kept writing
into a freed VM struct sitting on kmalloc's own free list, corrupting the
free list's linked-list metadata itself.
Both idle branches now re-resolve the live active VM fresh from
g_repl_active_vm on every tick, matching the dispatch-side fix already
made for the sibling bug in §XII.3.
Verified: rebuilt amd64, reran the exact three-cycle repro that reliably
corrupted the heap before the fix -- free-list census stayed stable
through the same idle window that previously collapsed to zero. All three
architectures (amd64/aarch64/riscv64) boot clean to the zuse)ok> prompt.
kmalloc_debug_census()/kmalloc_debug_census_bytes() kept as permanent
diagnostic infrastructure; every other temporary probe added during the
investigation was reverted.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01EXieurDfDSsDFdnSyusuWo
2026-09-10 20:30:41 -04:00
..
2026-08-21 23:46:02 -04:00
2026-08-22 08:33:35 -04:00
2026-08-22 08:33:35 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 10:11:47 -04:00
2026-08-22 10:33:37 -04:00
2026-08-22 11:44:15 -04:00
2026-08-22 12:41:26 -04:00
2026-08-22 12:59:49 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:40:16 -04:00
2026-08-25 08:17:50 -04:00
2026-08-25 08:40:35 -04:00
2026-08-25 09:07:33 -04:00
2026-08-25 09:07:33 -04:00
2026-08-25 09:33:17 -04:00
2026-08-25 09:33:17 -04:00
2026-08-25 11:46:55 -04:00
2026-08-25 12:27:57 -04:00
2026-08-25 12:55:53 -04:00
2026-08-25 14:10:05 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 23:28:59 -04:00
2026-08-26 01:01:26 -04:00
2026-08-26 02:53:56 -04:00
2026-08-26 03:03:39 -04:00
2026-08-26 03:13:50 -04:00
2026-08-26 07:05:37 -04:00
2026-08-26 07:14:51 -04:00
2026-08-26 13:58:22 -04:00
2026-09-02 17:12:21 -04:00
2026-09-02 17:25:06 -04:00
2026-09-03 05:57:01 -04:00
2026-09-03 06:03:14 -04:00
2026-09-03 06:10:11 -04:00
2026-09-03 06:15:53 -04:00
2026-09-03 06:26:50 -04:00
2026-09-03 06:38:32 -04:00
2026-09-03 06:44:58 -04:00
2026-09-03 07:18:41 -04:00
2026-09-03 07:23:27 -04:00
2026-09-03 07:29:01 -04:00
2026-09-03 07:36:57 -04:00
2026-09-03 07:44:28 -04:00
2026-09-03 11:24:24 -04:00
2026-09-03 11:38:07 -04:00
2026-09-03 12:09:29 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:42:26 -04:00
2026-09-04 10:33:47 -04:00
2026-09-04 10:45:57 -04:00
2026-09-04 11:04:25 -04:00
2026-09-04 11:22:51 -04:00
2026-09-04 11:37:29 -04:00
2026-09-04 11:53:44 -04:00
2026-09-04 13:05:42 -04:00
2026-09-04 13:36:08 -04:00
2026-09-04 14:00:32 -04:00
2026-09-04 14:12:42 -04:00
2026-09-04 14:42:32 -04:00
2026-09-04 22:24:57 -04:00
2026-09-04 22:47:18 -04:00
2026-09-04 23:05:39 -04:00
2026-09-04 23:15:09 -04:00
2026-09-04 23:31:38 -04:00
2026-09-04 23:54:39 -04:00
2026-09-05 00:06:41 -04:00
2026-09-05 00:17:35 -04:00
2026-09-05 00:56:25 -04:00
2026-09-05 01:06:24 -04:00
2026-09-05 01:25:50 -04:00
2026-09-05 01:47:53 -04:00
2026-09-05 01:47:53 -04:00
2026-09-05 02:08:06 -04:00
2026-09-05 02:24:51 -04:00
2026-09-05 15:57:21 -04:00
2026-09-05 16:17:35 -04:00
2026-09-05 22:14:14 -04:00
2026-09-09 14:30:14 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 22:11:09 -04:00
2026-09-10 16:07:38 -04:00
2026-08-22 08:33:35 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:37:55 -04:00
2026-08-22 09:49:15 -04:00
2026-08-22 10:11:47 -04:00
2026-08-22 10:33:37 -04:00
2026-08-22 12:59:49 -04:00
2026-08-22 12:59:49 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:40:16 -04:00
2026-08-25 08:17:50 -04:00
2026-08-25 08:40:35 -04:00
2026-08-25 09:07:33 -04:00
2026-08-25 09:07:33 -04:00
2026-08-25 09:33:17 -04:00
2026-08-25 09:33:17 -04:00
2026-08-25 11:46:55 -04:00
2026-08-25 11:46:55 -04:00
2026-08-25 12:27:57 -04:00
2026-08-25 12:27:57 -04:00
2026-08-25 12:27:57 -04:00
2026-08-25 12:55:53 -04:00
2026-08-25 12:55:53 -04:00
2026-08-25 12:55:53 -04:00
2026-08-25 14:10:05 -04:00
2026-08-25 14:10:05 -04:00
2026-08-25 14:10:05 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 23:28:59 -04:00
2026-08-26 01:01:26 -04:00
2026-08-26 02:53:56 -04:00
2026-08-26 03:03:39 -04:00
2026-08-26 03:13:50 -04:00
2026-08-26 07:05:37 -04:00
2026-08-26 07:14:51 -04:00
2026-08-26 13:58:22 -04:00
2026-08-28 13:02:23 -04:00
2026-08-28 21:42:14 -04:00
2026-08-28 21:42:14 -04:00
2026-08-28 23:28:10 -04:00
2026-09-01 12:09:20 -04:00
2026-09-01 12:09:20 -04:00
2026-09-02 17:12:21 -04:00
2026-09-02 17:12:21 -04:00
2026-09-02 17:12:21 -04:00
2026-09-02 17:25:06 -04:00
2026-09-03 05:57:01 -04:00
2026-09-03 06:03:14 -04:00
2026-09-03 06:10:11 -04:00
2026-09-03 06:15:53 -04:00
2026-09-03 06:26:50 -04:00
2026-09-03 06:26:50 -04:00
2026-09-03 06:26:50 -04:00
2026-09-03 06:38:32 -04:00
2026-09-03 06:44:58 -04:00
2026-09-03 07:18:41 -04:00
2026-09-03 07:23:27 -04:00
2026-09-03 07:29:01 -04:00
2026-09-03 07:36:57 -04:00
2026-09-03 07:44:28 -04:00
2026-09-03 11:24:24 -04:00
2026-09-03 11:38:07 -04:00
2026-09-03 12:09:29 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:42:26 -04:00
2026-09-04 10:33:47 -04:00
2026-09-04 10:45:57 -04:00
2026-09-04 11:04:25 -04:00
2026-09-04 11:22:51 -04:00
2026-09-04 11:37:29 -04:00
2026-09-04 11:53:44 -04:00
2026-09-04 13:05:42 -04:00
2026-09-04 13:36:08 -04:00
2026-09-04 14:00:32 -04:00
2026-09-04 14:12:42 -04:00
2026-09-04 14:42:32 -04:00
2026-09-04 22:24:57 -04:00
2026-09-04 22:47:18 -04:00
2026-09-04 23:05:39 -04:00
2026-09-04 23:15:09 -04:00
2026-09-04 23:31:38 -04:00
2026-09-04 23:54:39 -04:00
2026-09-05 00:06:41 -04:00
2026-09-05 00:17:35 -04:00
2026-09-05 00:56:25 -04:00
2026-09-05 01:06:24 -04:00
2026-09-05 01:25:50 -04:00
2026-09-05 01:47:53 -04:00
2026-09-05 02:08:06 -04:00
2026-09-05 02:24:51 -04:00
2026-09-05 15:57:21 -04:00
2026-09-05 15:57:21 -04:00
2026-09-05 16:17:35 -04:00
2026-09-05 16:17:35 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-05 22:14:14 -04:00
2026-09-06 20:24:05 -04:00
2026-09-09 12:08:03 -04:00
2026-09-09 12:08:03 -04:00
2026-09-09 12:08:03 -04:00
2026-09-09 12:08:03 -04:00
2026-09-09 12:08:03 -04:00
2026-09-09 14:30:14 -04:00
2026-09-09 14:30:14 -04:00
2026-09-09 14:30:14 -04:00
2026-09-09 14:30:14 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 20:55:21 -04:00
2026-09-09 20:55:21 -04:00
2026-09-09 20:55:21 -04:00
2026-09-09 20:55:21 -04:00
2026-09-09 20:55:21 -04:00
2026-09-09 20:55:21 -04:00
2026-09-09 22:11:09 -04:00
2026-09-09 22:11:09 -04:00
2026-09-10 11:16:02 -04:00
2026-09-10 11:16:02 -04:00
2026-09-10 16:07:38 -04:00
2026-09-10 17:19:01 -04:00
2026-09-10 20:30:41 -04:00
2026-09-10 20:30:41 -04:00
2026-09-10 20:30:41 -04:00
2026-09-10 20:30:41 -04:00
2026-09-10 20:30:41 -04:00
2026-09-10 20:30:41 -04:00
2026-09-10 20:30:41 -04:00
2026-08-22 08:33:35 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:25:25 -04:00
2026-08-22 09:37:55 -04:00
2026-08-22 10:11:47 -04:00
2026-08-22 10:33:37 -04:00
2026-08-22 11:44:15 -04:00
2026-08-22 12:41:26 -04:00
2026-08-22 12:59:49 -04:00
2026-08-25 07:27:07 -04:00
2026-08-25 07:40:16 -04:00
2026-08-25 08:17:50 -04:00
2026-08-25 08:40:35 -04:00
2026-08-25 09:07:33 -04:00
2026-08-25 09:07:33 -04:00
2026-08-25 09:33:17 -04:00
2026-08-25 09:33:17 -04:00
2026-08-25 11:46:55 -04:00
2026-08-25 12:27:57 -04:00
2026-08-25 12:55:53 -04:00
2026-08-25 14:10:05 -04:00
2026-08-25 14:51:02 -04:00
2026-08-25 19:14:01 -04:00
2026-08-25 23:28:59 -04:00
2026-08-26 01:01:26 -04:00
2026-08-26 02:53:56 -04:00
2026-08-26 03:03:39 -04:00
2026-08-26 03:13:50 -04:00
2026-08-26 07:05:37 -04:00
2026-08-26 07:14:51 -04:00
2026-08-26 13:58:22 -04:00
2026-09-02 17:12:21 -04:00
2026-09-02 17:25:06 -04:00
2026-09-03 05:57:01 -04:00
2026-09-03 06:03:14 -04:00
2026-09-03 06:10:11 -04:00
2026-09-03 06:15:53 -04:00
2026-09-03 06:26:50 -04:00
2026-09-03 06:38:32 -04:00
2026-09-03 06:44:58 -04:00
2026-09-03 07:18:41 -04:00
2026-09-03 07:23:27 -04:00
2026-09-03 07:29:01 -04:00
2026-09-03 07:36:57 -04:00
2026-09-03 07:44:28 -04:00
2026-09-03 11:24:24 -04:00
2026-09-03 11:38:07 -04:00
2026-09-03 12:09:29 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:21:01 -04:00
2026-09-04 09:42:26 -04:00
2026-09-04 10:33:47 -04:00
2026-09-04 10:45:57 -04:00
2026-09-04 11:04:25 -04:00
2026-09-04 11:22:51 -04:00
2026-09-04 11:37:29 -04:00
2026-09-04 11:53:44 -04:00
2026-09-04 13:05:42 -04:00
2026-09-04 13:36:08 -04:00
2026-09-04 14:00:32 -04:00
2026-09-04 14:12:42 -04:00
2026-09-04 14:42:32 -04:00
2026-09-04 22:24:57 -04:00
2026-09-04 22:47:18 -04:00
2026-09-04 23:05:39 -04:00
2026-09-04 23:15:09 -04:00
2026-09-04 23:31:38 -04:00
2026-09-04 23:54:39 -04:00
2026-09-05 00:06:41 -04:00
2026-09-05 00:17:35 -04:00
2026-09-05 00:56:25 -04:00
2026-09-05 01:06:24 -04:00
2026-09-05 01:25:50 -04:00
2026-09-05 01:47:53 -04:00
2026-09-05 02:08:06 -04:00
2026-09-05 02:24:51 -04:00
2026-09-05 15:57:21 -04:00
2026-09-05 16:17:35 -04:00
2026-09-05 22:14:14 -04:00
2026-09-09 14:30:14 -04:00
2026-09-09 20:41:51 -04:00
2026-09-09 22:11:09 -04:00
2026-09-10 16:07:38 -04:00