summaryrefslogtreecommitdiffstats
path: root/debug/risc-v-gsp-rm-vm/docs/37-SIM-QEMU-LINE.md
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-23 17:51:23 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-23 17:51:23 -0400
commit4f28cbed07a20b290891e7325a07072326c78167 (patch)
treede197610d584af6b3a29472d899112fb57235aa7 /debug/risc-v-gsp-rm-vm/docs/37-SIM-QEMU-LINE.md
parent032f17c044bd6b6ba8651e2d0b9ded6231832550 (diff)
downloadopen-iov-4f28cbed07a20b290891e7325a07072326c78167.tar.gz
open-iov-4f28cbed07a20b290891e7325a07072326c78167.zip
vgsp-sema r568: gate a partially-resolved launch on any unexecuted CE write
The page-level dstpend guard is blind when the launch's argument base was dropped (GRFILL-DROP): the launch's data set then lacks the buffer's pages. r571 mail: the VADD's copy-in ran at 319818.68 while the b H2D executed at 319820.16 (its base dropped, 9 pages unresolved) - the engine computed c = a + 0 again, same signature as r567/r568. r570 passed only because the page-level guard happened to catch it there. svc_copy_pending(): true when any active opdef slot belongs to a CE channel (a withheld CE release = a device write that has not executed; GR channels excluded so a launch's own withheld release cannot defer itself). A launch that is partially resolved (gr_arg_partial or gr_dropped > 0) now defers while any such write is pending, bounded by the same busy-defer + absolute 15 s cap machinery. Fully-resolved launches are unaffected (the page-level guard already covers them).
Diffstat (limited to 'debug/risc-v-gsp-rm-vm/docs/37-SIM-QEMU-LINE.md')
0 files changed, 0 insertions, 0 deletions