diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-16 22:42:33 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-16 22:42:33 -0400 |
| commit | 0c1a28193c4fcd75cb75bd4335f6db0b1c585b8b (patch) | |
| tree | ac8772d3826e4236b0f1cddc74e8e3a6b842c41e /kernel | |
| parent | 15776c037428f37dc6ca7660c9865b45cf71a198 (diff) | |
| download | open-iov-0c1a28193c4fcd75cb75bd4335f6db0b1c585b8b.tar.gz open-iov-0c1a28193c4fcd75cb75bd4335f6db0b1c585b8b.zip | |
vgsp: revert m170 per-arg stall persistence to aggregate semantics (benign 0-page junk candidates in fresh clients' launches stalled mail forever, r176); the per-arg fail-closed line stays as diagnostics
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/gsp_sema_service.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/kernel/gsp_sema_service.c b/kernel/gsp_sema_service.c index 79faf61..0217594 100644 --- a/kernel/gsp_sema_service.c +++ b/kernel/gsp_sema_service.c @@ -13405,15 +13405,16 @@ static void svc_gr_data_fill(struct nv_vgpu_device *vgpu) } } /* - * m170 fix: never CLEAR the per-argument stall signal set above. The - * original aggregate condition only held a launch when NO high - * argument resolved at all; one resolved kernel operand masked every - * unresolved one (r175: matmul cand[5]/[6] probe=none held fail-closed - * per-arg, then this line reset the flag because cand[13]/[14] had - * pins - the launch queued with two stale operands, bad=65536). + * m170 revert: the per-argument fail-closed signal is kept as + * DIAGNOSTIC only (the held fail-closed line above identifies the + * exact unresolved operand), but the launch-level stall keeps the + * historical aggregate semantics: a fresh client's launch stream + * carries BENIGN 0-page candidates (junk pointer words that never + * translate), and persisting the per-arg flag held mail's first + * launch forever (r176). Only a launch with NO resolvable high + * argument holds for the bounded m150 retry. */ - if (n_arg_hi > 0 && n_arg_hi_res == 0) - svc_gr_data_stalled = true; + svc_gr_data_stalled = (n_arg_hi > 0 && n_arg_hi_res == 0); if (svc_gr_data_stalled) pr_info("vgsp-sema: svc-gr data fill: %u candidate ptrs, %u pages resolved; %u high argument ptr(s), %u resolved -> launch held for a bounded retry\n", n_cand, svc_fwd_req.gr_n_data, n_arg_hi, n_arg_hi_res); |
