diff options
Diffstat (limited to 'kernel/gsp_phys_gpu.h')
| -rw-r--r-- | kernel/gsp_phys_gpu.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/kernel/gsp_phys_gpu.h b/kernel/gsp_phys_gpu.h index 70b98e4..6bfe3f0 100644 --- a/kernel/gsp_phys_gpu.h +++ b/kernel/gsp_phys_gpu.h @@ -124,6 +124,21 @@ bool gsp_phys_work_defer_release_enabled(void); bool gsp_phys_work_hw_primary_enabled(void); /* + * True when the gsp_phys_relay module parameter is set (default 0: a + * forwarded guest CE copy polls the module-owned ladder semaphore and the + * software release path stays the sole author of the guest-visible release). + * When set with gsp_phys_work_forward, gsp_phys_guest_mem and + * gsp_phys_work_defer_release, one selected one-word release of a forwarded + * guest push is authored by the real CE engine directly into the + * guest-visible semaphore page (a third scratch PTE maps that page) and the + * service thread skips the software apply of that record once the guest word + * carries the payload; every failure, timeout, abort or failed verification + * falls back to the unchanged software apply, so a release is never lost or + * duplicated. One-line rollback: gsp_phys_relay=0. + */ +bool gsp_phys_relay_enabled(void); + +/* * Translate a guest GPA to the pinned host PA (gsp_phys_guest_mem ladder * support). The mdev is registered with vfio_register_emulated_iommu_dev(): * its VFIO type-1 container keeps the guest DMA mappings privately, so |
