diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-06 17:37:50 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-06 17:37:50 -0400 |
| commit | 930789eafcb2ed05929c5ca8f92b5fda3b58875c (patch) | |
| tree | 1a4ebd2803e9d1dd9d97c6a14284ec9c7d197b82 /kernel/gsp_phys_gpu.c | |
| parent | c8b9b89b15c334ea61e8fba635763e406e7b9f0c (diff) | |
| download | open-iov-930789eafcb2ed05929c5ca8f92b5fda3b58875c.tar.gz open-iov-930789eafcb2ed05929c5ca8f92b5fda3b58875c.zip | |
vgsp: SKED/FE readback + QMD w50..53 + two-step PCAS gate (m41 instrumentation)
Diffstat (limited to 'kernel/gsp_phys_gpu.c')
| -rw-r--r-- | kernel/gsp_phys_gpu.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/kernel/gsp_phys_gpu.c b/kernel/gsp_phys_gpu.c index 9100959..5ec97e2 100644 --- a/kernel/gsp_phys_gpu.c +++ b/kernel/gsp_phys_gpu.c @@ -638,6 +638,24 @@ int gsp_phys_rmcall_gr_pcas_value(void) EXPORT_SYMBOL_GPL(gsp_phys_rmcall_gr_pcas_value); /* + * Two-step PCAS gate (default 0). With the explicit PCAS pair on, setting + * this marks the QMD's REQUIRE_SCHEDULING_PCAS (w4 bit12) and emits the copy + * PCAS (INVALIDATE only) followed by a schedule-only PCAS (SCHEDULE), the + * dependent-QMD flow (cuda_device.h:1108-1113). + */ +static int gsp_phys_rmcall_gr_pcas_two_step_param; +module_param_named(gsp_phys_rmcall_gr_pcas_two_step, + gsp_phys_rmcall_gr_pcas_two_step_param, int, 0644); +MODULE_PARM_DESC(gsp_phys_rmcall_gr_pcas_two_step, + "Two-step PCAS: set QMD REQUIRE_SCHEDULING_PCAS and emit copy PCAS then schedule-only PCAS (default 0; requires gsp_phys_rmcall_gr_pcas=1)"); + +int gsp_phys_rmcall_gr_pcas_two_step_value(void) +{ + return gsp_phys_rmcall_gr_pcas_two_step_param; +} +EXPORT_SYMBOL_GPL(gsp_phys_rmcall_gr_pcas_two_step_value); + +/* * Rank-2 qmdwin diagnostic (gsp_phys_rmcall_gr_qmdwin; default 0). When set, * a forwarded GR launch relocates its inline-QMD destination from the guest * QMD VA to a dedicated module page mapped at the ladder's own window-0 VA |
