diff options
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/gsp_sema_service.c | 36 |
1 files changed, 9 insertions, 27 deletions
diff --git a/kernel/gsp_sema_service.c b/kernel/gsp_sema_service.c index 4ba37d9..77c2315 100644 --- a/kernel/gsp_sema_service.c +++ b/kernel/gsp_sema_service.c @@ -11509,34 +11509,16 @@ static void svc_pump_channels(struct nv_vgpu_device *vgpu) svc_counter_autoreg(vgpu, ch, n_gr); svc_counter_flush_pending(vgpu, ch); /* - * FORENSICS-grv5 E1 (debug-gated): the fixed-total - * build maps a rank's counter slot onto the same word - * the push's REPORT_SEM release writes, so publish is a - * structural no-op (cur=1 already) while the client - * still waits - green m104/m141 had *every* slot in the - * 0x20400f000 page reach 1 (13 releases + formula - * publishes) before the client unblocked. Replicate - * green's end state for channels whose slot is still 0: - * write 1 once, forward-only, to the proof-gated - * registration. Diagnostic only (sema_dbg); if the - * client unblocks, the durable rule replaces this. + * FORENSICS-grv5 E1 (pub-mirror) was removed: SA-GATE + * (FORENSICS-grv7-gate) proved the forced write into + * the guest's counter word broke the guest's own + * state machine before ctx-init - mirror builds + * produced zero GR ring entries on every boot while + * non-mirror builds pushed (grv5 165; green 392/400). + * Never write a guest-visible word the guest did not + * ask for; read-only diagnostics (pub-info, gr-get-back) + * stay dbg-gated. */ - if (gsp_sema_dbg && !ch->engine_type && - ch->counter_pa && svc.counter_pub_dbg < 96) { - u32 mcur = 0, mval = 1; - - if (!svc_read_ap(vgpu, ch->counter_pa, - SVC_APERTURE_SYS, &mcur, - sizeof(mcur)) && mcur == 0 && - !svc_write_ap(vgpu, ch->counter_pa, - SVC_APERTURE_SYS, &mval, - sizeof(mval))) { - svc.counter_pub_dbg++; - pr_info("sema-chan: pub-mirror h=0x%x rank=%u pa=0x%llx val=1 (was 0)\n", - ch->h_object, ch->gr_index, - ch->counter_pa); - } - } /* * H3 (FORENSICS-v2): the end-of-pass publish below is * unreachable on the passes that early-`continue` |
