summaryrefslogtreecommitdiffstats
path: root/docs/05-operations
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-01 13:11:30 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-01 13:11:30 -0400
commit4254b221f393e5262083e5d7158110b934a52e57 (patch)
tree4fe1ce2042ab11761485cecd30623000df721029 /docs/05-operations
parent0f6451f9823e520d1a285b0912589053ad1fc26e (diff)
downloadopen-iov-4254b221f393e5262083e5d7158110b934a52e57.tar.gz
open-iov-4254b221f393e5262083e5d7158110b934a52e57.zip
gsp-phys: queue the pre-boot GSP_SET_SYSTEM_INFO and SET_REGISTRY async RPCs
The real-GSP boot path staged the message queue but never queued the two fire-and-forget init RPCs the production client places in it before the booter starts. GSP-RM therefore created its GPU object without any system information and aborted RM init (live GSP_INIT_DONE rpc_result=0x59), with the resource-manager's object-database lookups asserting from the first journal record. Submit function 72 (GSP_SET_SYSTEM_INFO, 928-byte v17_00 payload carrying the BAR physical bases, domain/bus/slot, PCI IDs, the BAR0 config-mirror offset, link/FLR capabilities and upstream-port flags read from the pci_dev) and function 73 (SET_REGISTRY, header-only empty table, which the server explicitly accepts) through the existing submit-only queue producer after all stage-3d preconditions and before the GSP falcon reset/Booter Load kick. The wire layouts are re-declared in the module with per-field static asserts against the reference ABI; payloads are heap-allocated, so no new stack frames are introduced.
Diffstat (limited to 'docs/05-operations')
0 files changed, 0 insertions, 0 deletions