diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-21 06:49:44 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-21 06:49:44 -0400 |
| commit | d84e4ac55e1dec7e1ce3d8ad8b9c0db9682d48eb (patch) | |
| tree | b0b6f9510bf05475570954a14a255c4acc836e3a /kernel/main.c | |
| parent | 3077c18f3acc20c0b92de7a8337c175c14986b94 (diff) | |
| download | open-iov-d84e4ac55e1dec7e1ce3d8ad8b9c0db9682d48eb.tar.gz open-iov-d84e4ac55e1dec7e1ce3d8ad8b9c0db9682d48eb.zip | |
sema: r408 acquire-wait gate defaults ON (the r408 streams2d readback race) + explicit param desc
With the gate off (the mission cycle recipe omitted sema_wait_gate=1),
the c2 readback's C56F ACQ_CIRC_GEQ pay=4 ran at 106617.279 with cur=2 -
before the c2-add launch was even submitted (106617.411) - and read the
not-yet-produced buffer (all zeros). With the gate on the same readback
holds until the scale channel's progress counter reaches 4 (sema-wait:
hold ... cur=2 waited_ms=353 -> pass ... cur=4) and the ordering is
correct. The holds are bounded (sema_wait_hold_ms, default 4000) and
fail open loudly, so the pre-r336 pass-through remains available with
sema_wait_gate=0 for an A/B.
Diffstat (limited to 'kernel/main.c')
| -rw-r--r-- | kernel/main.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/main.c b/kernel/main.c index d2a44d6..0110372 100644 --- a/kernel/main.c +++ b/kernel/main.c @@ -2829,6 +2829,7 @@ MODULE_PARM_DESC(sema_pool_hold_fresh, "apply pool releases at fresh-pin time in */ module_param_named(sema_copy_dst_pin_guard, gsp_sema_copy_dst_pin_guard, bool, 0644); module_param_named(sema_wait_gate, gsp_sema_wait_gate, bool, 0644); +MODULE_PARM_DESC(sema_wait_gate, "honor C56F host-semaphore acquires before running a ring entry's work (default 1 since r408; 0 restores pass-through)"); module_param_named(sema_wait_hold_ms, gsp_sema_wait_hold_ms, uint, 0644); MODULE_PARM_DESC(sema_wait_hold_ms, "bounded acquire-wait hold before fail-open, ms (r401, default 4000; must exceed the emulated launch latency)"); MODULE_PARM_DESC(sema_copy_dst_pin_guard, "hold device-dst copies without a pin-resolved translation (default 1)"); |
