diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-01 13:11:30 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-01 13:11:30 -0400 |
| commit | 4465833fa61dbed0519b770774b4ed439cf22054 (patch) | |
| tree | c2acaa81afa7fdcd6dd8dc08e3c566df9c5f34af /kernel/version | |
| parent | 8c6ca7237919a6b3f980dc45179cc390a15b3ac4 (diff) | |
| download | open-iov-4465833fa61dbed0519b770774b4ed439cf22054.tar.gz open-iov-4465833fa61dbed0519b770774b4ed439cf22054.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 'kernel/version')
0 files changed, 0 insertions, 0 deletions
