Rename FABRIC series: FABRIC.md->0, FABRIC-2.md->1, FABRIC-3.md->2, FABRIC-4.md unchanged
FABRIC.md -> FABRIC-0.md FABRIC-2.md -> FABRIC-1.md FABRIC-3.md -> FABRIC-2.md (the current/living document) FABRIC-4.md unchanged (new #3 to follow separately) Every cross-reference repo-wide updated to match, including doc-comment citations inside kernel source (.c/.h) files -- done via an ordered placeholder substitution (FABRIC-3.md->placeholder2, FABRIC-2.md-> placeholder1, FABRIC.md->placeholder0, then placeholders resolved to final names) in a single pass per file to avoid double-shifting already-renamed references. One line in capsules/font.4th grew past the 64-char block-format limit as a side effect of the longer filename; shortened it and reverified with mkcapsule --lint (34/34 pass) before rebuilding. Verified 3-arch boot to ok> (amd64/aarch64/riscv64, each in the foreground) after the fix; logs and DoE CSVs from this session's verification runs included per this repo's own audit-artifact convention. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019YcT3H2PQeyujrzjqS3Var
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
ff2941dfb9
commit
b031b802e3
@@ -16,7 +16,7 @@
|
||||
*
|
||||
* Base addresses and the PPI INTID are QEMU-virt-machine constants, not
|
||||
* device-tree-discovered, and that is a deliberate, recorded exception
|
||||
* rather than an oversight (FABRIC.md item 0.6, GAP-B1 follow-up):
|
||||
* rather than an oversight (FABRIC-0.md item 0.6, GAP-B1 follow-up):
|
||||
* `fdt_valid(boot_info->dtb)` fails on this system's aarch64 firmware
|
||||
* (qemu-efi-aarch64 2025.11-3ubuntu7 does not forward a devicetree to the
|
||||
* guest), confirmed live rather than assumed. The values below were not
|
||||
@@ -168,7 +168,7 @@ int apic_init(BootInfo *boot_info)
|
||||
* 3. @c GICD_ITARGETSR (byte-indexed like IPRIORITYR) -- routes to CPU 0
|
||||
* only; this target has no @c -smp, so no other bit is ever valid.
|
||||
* 4. @c GICD_ICFGR is read back, not written, unless the readback disagrees
|
||||
* with the expected level-triggered configuration -- FABRIC.md §27.5.1's
|
||||
* with the expected level-triggered configuration -- FABRIC-0.md §27.5.1's
|
||||
* decoded QEMU `interrupt-map` says PCI legacy INTx on this board already
|
||||
* is level-triggered by default, so this keeps item 0.6's "don't touch
|
||||
* ICFGR unless forced to" posture rather than writing it unconditionally.
|
||||
|
||||
@@ -33,7 +33,7 @@ static int s_current_el = -1;
|
||||
*
|
||||
* EDK2 on QEMU's aarch64 @c virt machine has been observed to leave the
|
||||
* kernel at either EL1 or EL2 depending on firmware build; nothing in this
|
||||
* tree may assume one over the other (FABRIC.md §25.7.1 GAP-B3). Every
|
||||
* tree may assume one over the other (FABRIC-0.md §25.7.1 GAP-B3). Every
|
||||
* EL-dependent choice — @c VBAR_EL1 vs @c VBAR_EL2, the @c ELR_ELx /
|
||||
* @c SPSR_ELx saved-state pair, and @c CNTP_*_EL0 vs @c CNTHP_*_EL2 — must
|
||||
* read this accessor rather than hardcode a level.
|
||||
@@ -129,7 +129,7 @@ void arch_cold_reset(void)
|
||||
* arguments and has no SMC64 variant defined by the PSCI spec -- only
|
||||
* the SMC32 encoding is valid (fixed 2026-08-18, was 0xC4000009).
|
||||
*
|
||||
* FABRIC-2.md Section I, 2026-08-18: live gdb tracing (using the real
|
||||
* FABRIC-1.md Section I, 2026-08-18: live gdb tracing (using the real
|
||||
* UEFI-relocated runtime address, not the standalone kernel.elf's
|
||||
* link-time address -- see that section for why those differ) proved
|
||||
* the SMC call itself traps: PC does not fall through to the wfi loop
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
/* ─── ARM generic-timer helpers ─────────────────────────────────────── */
|
||||
|
||||
/* FABRIC-3.md §I.5, 2026-09-04: real hypervisor-vs-hardware detection.
|
||||
/* FABRIC-2.md §I.5, 2026-09-04: real hypervisor-vs-hardware detection.
|
||||
* s_cal.vm_mode was hardcoded to 1 unconditionally below (comment:
|
||||
* "QEMU SBSA always uses virtualised Generic Timer") -- true for the
|
||||
* *timing policy* this file cares about, but wrong to reuse as a
|
||||
@@ -260,7 +260,7 @@ const timer_calibration_record_t *timer_calibration_record(void)
|
||||
/**
|
||||
* @brief Read the raw counter the aarch64 heartbeat is paced against.
|
||||
*
|
||||
* Item 0.8 (FABRIC.md §25.1): the shared heartbeat.c now owns
|
||||
* Item 0.8 (FABRIC-0.md §25.1): the shared heartbeat.c now owns
|
||||
* heartbeat_init()/heartbeat_tick()/heartbeat_service()/heartbeat_ticks()/
|
||||
* heartbeat_trust()/heartbeat_state() and the per-arch @c g_heartbeat
|
||||
* state that used to live in this file. This is the one piece that stays
|
||||
|
||||
Reference in New Issue
Block a user