diff options
Diffstat (limited to 'wiki/GMMU-Multi-Tenant-Protection.md')
| -rw-r--r-- | wiki/GMMU-Multi-Tenant-Protection.md | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/wiki/GMMU-Multi-Tenant-Protection.md b/wiki/GMMU-Multi-Tenant-Protection.md index 83b00ba..6ea5b9b 100644 --- a/wiki/GMMU-Multi-Tenant-Protection.md +++ b/wiki/GMMU-Multi-Tenant-Protection.md @@ -15,7 +15,7 @@ two halves: 1. **Service-state ownership (baseline 1.0).** The work/completion service (`kernel/gsp_sema_service.c`) is one global context (`static struct sema_svc svc`, `:676`), the pump services the first open mdev - (`:13296-13308`), and channels/VA spaces/translations are keyed by + (`:13352-13364`), and channels/VA spaces/translations are keyed by guest-chosen values alone (`:847`, `:988`, `:113-130`). Two guests can pick the same handles and VAs (live: channel `0xcaf000d4`; `../debug/issue/issue-number-2.md`), so owner-keying is a prerequisite @@ -76,12 +76,12 @@ periodic owner-vs-PTE audit with canaries catches escapes. If only per-tenant separation exists, the deployable contract is **one agent per tenant, one tenant per context** (canonical ยง5.4). -## Key code anchors (master `66388560`) +## Key code anchors (master `1f571dda`) | What | Where | |---|---| | per-mdev emulation context | `kernel/include/nvidia-vgpu-vfio.h:133`, `kernel/gsp_emulation.h:130` | -| global service state | `kernel/gsp_sema_service.c:676`; pump `:13296`; doorbell `:13456` | +| global service state | `kernel/gsp_sema_service.c:676`; pump `:13352`; doorbell `:13512` | | channel/vaspace registries | `kernel/gsp_sema_service.c:847`, `:988` | | GMMU walk (VER2) | `kernel/gsp_sema_service.c:1174`; decode `:1093` | | page directory record | `kernel/gsp_rm_emulation.c:3320`; reserved PDEs `:2237-2262` | |
