diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-24 02:23:42 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-24 02:23:42 -0400 |
| commit | 9333e84deed78464a7448c9faaf6841261a802d8 (patch) | |
| tree | b0290673250e30c428d0de5f16055c8468ec1465 /kernel/main.c | |
| parent | 668c22768abce559ab756f2f998260e08044a3d1 (diff) | |
| download | open-iov-9333e84deed78464a7448c9faaf6841261a802d8.tar.gz open-iov-9333e84deed78464a7448c9faaf6841261a802d8.zip | |
vgsp-gr r595b: bound the stream-order guard to a settle window, then forward (never refuse)
With r595 the relocation copies execute within 0.5-1.5 s, but the r590b
watermark deferred through the shared 15 s cap; by then the r541/r583
dstpend guard took its fail-closed branch and refused a launch whose
data was already on its way (r596 mail MAILDUMP zeros, 2 refusals).
Track the settle start per push VA and defer only for
gsp_phys_gr_cewm_settle_ms (default 2000). Each deferral is one pump
pass and the pump drains the copy rings before the launching channel, so
the window is enough for the r595 copies; after it the launch forwards
with a witness. The guard can no longer reach any cap-refusal branch.
Diffstat (limited to 'kernel/main.c')
| -rw-r--r-- | kernel/main.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/kernel/main.c b/kernel/main.c index d821762..88dda02 100644 --- a/kernel/main.c +++ b/kernel/main.c @@ -2756,6 +2756,15 @@ module_param_named(sema_ce_grace_ms, gsp_sema_ce_grace_ms, uint, 0644); MODULE_PARM_DESC(sema_ce_grace_ms, "CE pending-entry grace window in ms (default 25000)"); /* + * r595b: bounded stream-order settle for a GR launch whose device rings + * still hold unconsumed entries (0 disables the guard's deferral). + */ +module_param_named(gsp_phys_gr_cewm_settle_ms, gsp_phys_gr_cewm_settle_ms, + uint, 0644); +MODULE_PARM_DESC(gsp_phys_gr_cewm_settle_ms, + "GR launch stream-order settle window in ms (default 2000)"); + +/* * Bounded work-before-release hold (ms) for an unreadable CE entry; the * deferred retry probe shows translations/pins land 0.5-2 s late. Absolute * per-entry deadline, never reset; 0 disables. |
