redbear-info: pcid-spawner → driver-manager label; plan P2-1 done
redbear-info's integration check list still labeled the PCI spawner as 'pcid-spawner' and pointed at /usr/bin/pcid-spawner (deleted). Updated to 'driver-manager' with /usr/bin/driver-manager and a note about /scheme/driver-manager/bound. Plan v3.2 marks P2-1 done (pcid AER + pciehp producers validated in QEMU).
This commit is contained in:
@@ -18,6 +18,22 @@ deferred), registers `scheme:driver-manager`, and enters the resident
|
||||
hotplug loop. pcid-spawner stays dormant on both phases via
|
||||
`ConditionPathExists`.
|
||||
|
||||
**P2-1 ✅ (2026-07-24): pcid produces AER + pciehp events.** A 500 ms
|
||||
poller thread in pcid scans every enumerated device: the AER scanner
|
||||
reads uncorrectable/correctable status from the PCIe AER extended
|
||||
capability (emits `severity=<level> device=<bdf>` lines, W1C-clears),
|
||||
the pciehp scanner reads Slot Status on hot-plug-capable ports (emits
|
||||
`kind=<event> device=<bdf>` lines for presence-detect, DLL state,
|
||||
attention button, MRL sensor, power fault, W1C-clears). Both streams
|
||||
are capped 64-line logs served read-only at `/scheme/pci/aer` and
|
||||
`/scheme/pci/pciehp`; device strings use the scheme dir-name format so
|
||||
`route_to_driver` matches bound paths. driver-manager's AER listener
|
||||
moved from the nonexistent `/scheme/acpi/aer` to `/scheme/pci/aer`.
|
||||
Extended capabilities need ECAM; fallback machines produce nothing
|
||||
gracefully. QEMU gate: poller running (6 devices, 500 ms), listener on
|
||||
the producer path, zero errors. MSI-based delivery remains the
|
||||
follow-up once pcid grows an IRQ path for AER/hotplug.
|
||||
|
||||
Four runtime bugs found and fixed by the gate (none visible at compile
|
||||
grade — exactly why the runtime column exists):
|
||||
|
||||
|
||||
@@ -353,13 +353,13 @@ const INTEGRATIONS: &[IntegrationCheck] = &[
|
||||
functional_probe: Some(probe_smolnetd_surface),
|
||||
},
|
||||
IntegrationCheck {
|
||||
name: "pcid-spawner",
|
||||
name: "driver-manager",
|
||||
category: "Core",
|
||||
description: "PCI driver autoload daemon",
|
||||
artifact_path: Some("/usr/bin/pcid-spawner"),
|
||||
description: "PCI driver match/claim/spawn daemon",
|
||||
artifact_path: Some("/usr/bin/driver-manager"),
|
||||
control_path: Some("/scheme/pci"),
|
||||
test_hint: "lspci",
|
||||
note: "The PCI scheme proves discovery is live, but not which driver handled each device.",
|
||||
note: "The PCI scheme proves discovery is live; /scheme/driver-manager/bound shows which drivers are bound.",
|
||||
functional_probe: Some(probe_directory_readable),
|
||||
},
|
||||
IntegrationCheck {
|
||||
|
||||
Reference in New Issue
Block a user