summaryrefslogtreecommitdiffstats
path: root/kernel/memory.c
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-29 16:37:02 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-29 16:37:02 -0400
commit1ad8556e8ed81ab91bf74ebc76681f350ca8bf6f (patch)
treea5cd80f03cdeb8cf93f8aefd69171f6e23cc83db /kernel/memory.c
parent5b80f3d5e1b9a597a7e7e0d761a5fa8b5804dbc1 (diff)
downloadopen-iov-1ad8556e8ed81ab91bf74ebc76681f350ca8bf6f.tar.gz
open-iov-1ad8556e8ed81ab91bf74ebc76681f350ca8bf6f.zip
sema-svc: GR counter slots only from injected pins; route GR releases through the exact slot
Live evidence: with the counter page pinned, counter_pa still resolved to a stale self-discovered page, so every release write went to memory the client never polls (host read back its own 1s; client's page stayed 0) and the client's context-init wait expired. The generic release path could also write through that stale translation. - svc_counter_autoreg / svc_counter_learn trust only the injected-pin table (svc_ipin_lookup); learn re-registers when the injected PA differs. - Releases whose target is in the GR counter VA range skip the generic translation write entirely and go through the injected-pin-backed slot.
Diffstat (limited to 'kernel/memory.c')
0 files changed, 0 insertions, 0 deletions