diff options
| -rw-r--r-- | kernel/gsp_phys_booter.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c index 43ab00f..bcb0dd0 100644 --- a/kernel/gsp_phys_booter.c +++ b/kernel/gsp_phys_booter.c @@ -23395,6 +23395,17 @@ static u64 gsp_phys_gr_wit_first8[GSP_PHYS_GR_WIT_MAX]; static u32 gsp_phys_gr_wit_n; static u32 gsp_phys_gr_wit_rep_log; +/* + * CONT-111: the changed-page line budget was a hardcoded 4; a store-rich + * launch (r1378 reached 305/903 relocated-operand pages) needs the whole + * list to find the render target among the operand pages. 0 keeps the + * summary line only. + */ +static u32 gsp_phys_gr_wit_shown = 4; +module_param_named(sema_gl_wit_shown, gsp_phys_gr_wit_shown, uint, 0644); +MODULE_PARM_DESC(sema_gl_wit_shown, + "Max GUEST-WIT changed va/pa lines per report (default 4; CONT-111 RT hunt)"); + static void gsp_phys_gr_wit_reset(void) { gsp_phys_gr_wit_n = 0; @@ -23471,7 +23482,7 @@ static u32 gsp_phys_gr_wit_report(const char *where) * vertex/float data means the guest CPU rewrote its * buffer while the engine ran. */ - if (shown < 4) { + if (shown < gsp_phys_gr_wit_shown) { shown++; pr_info("vgsp-gr: GUEST-WIT %s changed va=0x%llx pa=0x%llx pre=0x%016llx post=0x%016llx\n", where, |
