summaryrefslogtreecommitdiffstats
path: root/kernel/gsp_phys_gpu.c
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-09 14:59:41 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-09 14:59:41 -0400
commit12c52b35252d8f46db1b7294ec8439530e4b71b9 (patch)
tree99545bf50ec44231a6f23a694ecde354937480b8 /kernel/gsp_phys_gpu.c
parent088fa8f3e854ff33fe2d1188d2d237942956b918 (diff)
downloadopen-iov-12c52b35252d8f46db1b7294ec8439530e4b71b9.tar.gz
open-iov-12c52b35252d8f46db1b7294ec8439530e4b71b9.zip
vgsp-sema: CE USERD is layout-only; never latch the registered stale block (ISSUE-0002)
The pump calls svc_chan_userd before the ring is pinned; the old candidate list then accepted the registered pool-relative userdMem offset (stale cross-session 1/1) and userd_ok froze it for the session (r42 c2 rank0 userd=0xf0000 while the layout block 0x90000 is the one the guest writes). For CE channels: wait for the ring, validate its entry0 (a CE push VA + len), then accept the layout USERD at ring+0x10000 even while idle; anything else returns -ENOENT so the next pass retries. Registered-offset candidates remain for non-CE channels.
Diffstat (limited to 'kernel/gsp_phys_gpu.c')
0 files changed, 0 insertions, 0 deletions