From 52cf2ebb96e7e903b60a817b079a16c1f5340e7d Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Tue, 29 Sep 2026 15:41:01 -0400 Subject: sema-svc: sema_skip_ops parameter (apply releases without running pushed memsets) --- kernel/main.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'kernel/main.c') diff --git a/kernel/main.c b/kernel/main.c index 952daf1..590d956 100644 --- a/kernel/main.c +++ b/kernel/main.c @@ -2440,6 +2440,15 @@ MODULE_PARM_DESC(sema_gr_rings, "Auto-discover+pin GR channel rings (default 1)" module_param_named(sema_fake_rel, gsp_sema_fake_rel, bool, 0644); MODULE_PARM_DESC(sema_fake_rel, "Acknowledge unreadable CE releases directly (default 0)"); +/* + * Skip executing the pushed work (CE memsets/copies) while still applying the + * semaphore releases. The client only observes releases; skipping the shadow + * writes removes the per-push execution cost that dominates the context-init + * latency budget. + */ +module_param_named(sema_skip_ops, gsp_sema_skip_ops, bool, 0644); +MODULE_PARM_DESC(sema_skip_ops, "Apply releases without executing pushed memsets (default 0)"); + /* * Grace window (ms) an untranslatable GR entry stays pending before the pump * consumes it as stale, so a late push-buffer pin can still make it readable. -- cgit v1.2.3