diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-19 08:55:11 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-19 08:58:17 -0400 |
| commit | cdfa86724a9cf6648f1e3b602f435b69976fb6c0 (patch) | |
| tree | 0580333d779cabc1640062d2afd958f35f383a59 | |
| parent | 2249ab37c335c4e827597aa8e35baa6692ef7b03 (diff) | |
| download | open-iov-cdfa86724a9cf6648f1e3b602f435b69976fb6c0.tar.gz open-iov-cdfa86724a9cf6648f1e3b602f435b69976fb6c0.zip | |
vgsp: fail4 r239 - widen per-recp content witnesses to n_data<=1024 (probe class is ~950 recs)
The probe's launches carry ~950-970 recs (its 2 MB VA arena is one span),
so the <=64-rec gates on A-TRACE pt=P3 (engine-read source content) and
READ-DIVERGE-WIT (fill vs copy-path vs ledger per rec) never fired for
the probe - exactly the launches they were built for. Raise both gates to
1024; budgets unchanged (128 lines / first 8 recs), so the transformer's
1418-rec launches stay out.
r239 findings this rides on: the probe's H2D (h_A->d_A) leaves ZERO host
trace (no copy, no launch, no audit in a continuous 6.6k-line dmesg
stream) and A's vidmem reads as deterministic junk from the very first
post-upload read; the driver's 512-thread memset kernel zero-writes with
fe_esr=0x80000000 and the 3x fresh-attempt retry path (fresh qmdwin bank +
win0 bank + rebuilt PB) does NOT recover it. A minimal new repro (blk512)
shows the band bug without any probe machinery: grid(8,1)x512 writes 4/4
buffers perfectly while grid(16,4)x(16,16) 'out[i]=i' is deterministically
bad=12288 (rows >= 16), with the engine-side scan reporting 31/31 changed
pages - the by>=1 stores exist somewhere the client does not read.
| -rw-r--r-- | kernel/gsp_phys_booter.c | 2 | ||||
| -rw-r--r-- | kernel/gsp_sema_service.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c index 7766cb5..101397f 100644 --- a/kernel/gsp_phys_booter.c +++ b/kernel/gsp_phys_booter.c @@ -19583,7 +19583,7 @@ gr_page_unmapped: * any point in the pipeline where that pattern breaks names * the bug site. */ - if (req->n_data <= 64u && gsp_phys_gr_atrace_budget < 128u) { + if (req->n_data <= 1024u && gsp_phys_gr_atrace_budget < 128u) { u32 d; for (d = 0; d < req->n_data && d < 16u; d++) { diff --git a/kernel/gsp_sema_service.c b/kernel/gsp_sema_service.c index d8c9f44..1e4ce61 100644 --- a/kernel/gsp_sema_service.c +++ b/kernel/gsp_sema_service.c @@ -14474,7 +14474,7 @@ static void svc_fwd_gr_work(void) * permutation. Bounded: first 8 recs, 4 lines per launch, * boot budget 128. */ - if (svc_fwd_req.gr_n_data <= 64u && i < 8u && + if (svc_fwd_req.gr_n_data <= 1024u && i < 8u && svc_readdiv_log < 128u) { u64 opa = 0, lpa2 = 0; u32 oap = 0, lap2 = 0; |
