diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-08 11:33:42 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-08 11:33:42 -0400 |
| commit | 9d484f295d96bf8d28d889df6274439efd5e4b55 (patch) | |
| tree | 5a84b5681f4de1abaec7c752a68d61b968ecd5f0 /docs/07-developers | |
| parent | f8edfb21e0880935fbe5aa62996fcd9af64c32ff (diff) | |
| download | open-iov-9d484f295d96bf8d28d889df6274439efd5e4b55.tar.gz open-iov-9d484f295d96bf8d28d889df6274439efd5e4b55.zip | |
vgsp-sema: retryable page-directory discovery from fresh guest-truth pairs (ISSUE-0001)
svc_pd_discover() latched svc_pd_tried before its first scan, so a call
that ran before the client's page tables existed (or before enough
verified push-buffer pairs were known) disabled the one kernel-native
source that translates pool/push windows the content-scanned map and the
published directories miss, for the rest of the boot. That source is what
svc_lookup_trusted() and svc_pool_pa_resolve() fall back to when the
userspace watcher pins race.
Make discovery retryable and evidence-driven: an attempt that cannot run
does not latch, a scan runs only when the sample-set fingerprint changed,
and the total is capped at SVC_PD_ATTEMPTS_MAX per boot - the same order
as the old per-pairing re-arm, which this supersedes (the stale re-arm in
svc_pb_pair is removed).
Evidence: ISSUE-0001, SA-STALL 3.2/3.4 (the deferred pool release of the
last CE push with no translation when watchers race).
Diffstat (limited to 'docs/07-developers')
0 files changed, 0 insertions, 0 deletions
