summaryrefslogtreecommitdiffstats
path: root/wiki/open-iov.org/index.php/File:Figure_0-_Approches_to_GPU_Virtualization..png.html
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-28 17:09:51 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-28 17:09:51 -0400
commit7dddb85c888c57b6b125ce0487d599500ea06769 (patch)
tree22ee3e556a8cdc26893005586d29bf2d6d8b0710 /wiki/open-iov.org/index.php/File:Figure_0-_Approches_to_GPU_Virtualization..png.html
parentb55f8d948878d24fd1b0f72de7ae294650cf27da (diff)
downloadopen-iov-7dddb85c888c57b6b125ce0487d599500ea06769.tar.gz
open-iov-7dddb85c888c57b6b125ce0487d599500ea06769.zip
sema: rescue by exact release group at any offset, with validated pin alignment
Kernel: the slot-aligned failing entries carry pushes whose release group is not at the page's fixed +0x10 offset, so the shape matcher found nothing. Scan every 4-byte offset for the exact group (hdr 0x20038090, hi==1, lo&0xfff==slot, follower LAUNCH_DMA sem-release; payload may lag the tracked expectation) with the header compared first. Each match yields two candidate pin bases - the group's page and the page implied by treating the group as the end of this entry's push - and each candidate is validated by pinning and reading the entry VA back before it is accepted. Live: 13 rescues pinned the MEMOPS slots; the 12700-byte push then decoded to 29 op-runs with a real release, and memset=338 fills (page-table clears) executed ~13 s before the client's rc=999.
Diffstat (limited to 'wiki/open-iov.org/index.php/File:Figure_0-_Approches_to_GPU_Virtualization..png.html')
0 files changed, 0 insertions, 0 deletions