summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/gsp_phys_gpu.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/kernel/gsp_phys_gpu.c b/kernel/gsp_phys_gpu.c
index 6bd5aa0..b93c254 100644
--- a/kernel/gsp_phys_gpu.c
+++ b/kernel/gsp_phys_gpu.c
@@ -1124,23 +1124,25 @@ int gsp_phys_gr_nowrite_retries_value(void)
EXPORT_SYMBOL_GPL(gsp_phys_gr_nowrite_retries_value);
/*
- * r410 wedge quiet window (gsp_phys_gr_wedge_quiet_ms; default 20000, clamped
+ * r410 wedge quiet window (gsp_phys_gr_wedge_quiet_ms; default 40000, clamped
* [0,120000]; 0 disables). The sticky per-lane no-execute wedge (100% of
* launches no-write while kept busy) is proven to CLEAR when the lane stays
* quiet for tens of seconds (r409: a ~37 s client gap healed a wedged run;
* r416: 58 consecutive no-write launches during a 126 s client run, first
- * launches green again after the lane sat ~52 s idle). Immediate retries and
+ * launches green again after the lane sat ~52 s idle; r417: a 20 s host hold
+ * did not heal, a 40 s hold did - "WEDGE-QUIET healed: engine wrote 1
+ * page(s) after the 40000 ms hold"). Immediate retries and
* re-arms do not heal it (r409/r154). So when a zero-write outcome follows a
* previous accepted zero-write launch, the retry loop first holds this many ms
* with NO submissions to the engine, then re-arms (lane enable + schedules)
* and re-publishes once. The value doubles per further quiet retry. The
* quiet window is recovery-only: a launch that wrote anything never enters it.
*/
-static unsigned int gsp_phys_gr_wedge_quiet_ms_param = 20000u;
+static unsigned int gsp_phys_gr_wedge_quiet_ms_param = 40000u;
module_param_named(gsp_phys_gr_wedge_quiet_ms,
gsp_phys_gr_wedge_quiet_ms_param, uint, 0644);
MODULE_PARM_DESC(gsp_phys_gr_wedge_quiet_ms,
- "Quiet-window ms before retrying a launch on a lane whose previous launch also no-wrote (0=disable, default 20000)");
+ "Quiet-window ms before retrying a launch on a lane whose previous launch also no-wrote (0=disable, default 40000; r417: a 20 s hold did not heal, 40 s healed)");
unsigned int gsp_phys_gr_wedge_quiet_ms_value(void)
{