feat: re-instrument per STUB rules - all silent placeholders now panic

- PE-E03 pe_loader.c: unsupported base-reloc type silently skipped -> panic
- PE-E04 pe_shim.c ReadFile: fake TRUE+0-bytes ("pretend EOF") -> panic
- PE-E05 pe_shim.c CreateFileA: no file backend -> panic (no honest-failure excuse)
- PE-E06/E07 x86emu32.c: emu IAT unimplemented API / shim index OOB -> panic
- NETST-E01 net.c: netdev stats all-zero placeholder ("lying zero traffic") -> panic
- apic.c comment: SIPI reserved now points to DKM-E03 skeleton
- pe_dll_manager comments: circular-dep stub call now documented as PE-E01
- virtio_blk.c: capacity declaration marked as instrumentation whitelist
- QEMU verify: wizard -> Save -> verify ok -> login success -> desktop ready,
  zero spurious panics

[STUB] P1/UTSM/pe+net re-instrument sweep | 剩余STUB命中=101 (全部为 panic 坐标注释 /
IDT halt-stub 防御术语 / 白名单) | “未成之物,不留活口”
This commit is contained in:
Linehu
2026-10-03 12:44:57 +08:00
parent cd39caa10c
commit 301006d611
13 changed files with 78 additions and 18 deletions
+3 -1
View File
@@ -356,7 +356,9 @@ int pe_dll_load(const char *dll_name, u64 *out_base) {
return 0;
}
if (e->state == DLL_STATE_LOADING) {
/* 循环依赖:返回 -1,调用方填 unimpl stub */
/* 循环依赖:返回 -1,调用方填 unimpl stub——该 stub 被调用
* 即 PE-E01 莲花 panic(见 pe_shim.c shim_unimpl64),
* 不存在静默降级出口。 */
if (out_base) *out_base = 0;
return -1;
}