refactor(v3): the block subsystem's state is a chain there can be two of; blk_subsys_init takes no VM
The global state becomes struct blk_chain, reached through a current pointer: blk_chain_default, blk_chain_new, blk_chain_select. Nothing that uses the one chain changes. blk_subsys_init loses its VM argument, which was stored and never used. docs/v4.0.0/MESH.md 8.4. Accepted on the v3 configuration: amd64, aarch64 and riscv64 reach the zuse prompt, no UNKNOWN WORD, PARITY:M7.1a hash 0x08873e0f44b7cb2a on all three, as on 2026-10-03. logs/20261006-202918, -203036, -203230. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
a7991f2757
commit
0e761cb117
@@ -95,7 +95,9 @@
|
||||
|
||||
int capsule_blk_init(void *vm, uint8_t *ram_buf, size_t ram_size, uint8_t *krd_buf)
|
||||
{
|
||||
int rc = blk_subsys_init((VM *)vm, ram_buf, ram_size);
|
||||
int rc;
|
||||
(void)vm; /* the block subsystem no longer takes one */
|
||||
rc = blk_subsys_init(ram_buf, ram_size);
|
||||
if (rc != 0) return rc;
|
||||
return blk_subsys_add_raw_device(krd_buf, KRD_MAX_BLOCKS);
|
||||
}
|
||||
|
||||
@@ -303,7 +303,7 @@ int sk_vm_bootstrap_parity(ParityPacket *out) {
|
||||
|
||||
/* Initialize block subsystem for POST — mirrors hosted main.c init order.
|
||||
* Without this, all block word tests fail with vm->error=1 (blk_is_valid→0). */
|
||||
blk_subsys_init(vm, sk_post_blk_ram, sizeof(sk_post_blk_ram));
|
||||
blk_subsys_init(sk_post_blk_ram, sizeof(sk_post_blk_ram));
|
||||
|
||||
/* Run full POST (Power-On Self Test) */
|
||||
console_println("POST: Running comprehensive test suite...");
|
||||
|
||||
Reference in New Issue
Block a user