diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-24 10:32:20 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-24 10:32:20 -0400 |
| commit | aa38657bf425d3984136a85b695ef02aeb6f887d (patch) | |
| tree | 9f6906af66c60f11c25dc170652cb91697f0583b /kernel/gsp_sema_service.h | |
| parent | 962f2171f31013791b6b02b305e091b849f67320 (diff) | |
| download | open-iov-aa38657bf425d3984136a85b695ef02aeb6f887d.tar.gz open-iov-aa38657bf425d3984136a85b695ef02aeb6f887d.zip | |
vgsp-sema r616 diag: grfaultpoke - manually write a channel's error notifier (relayed-fault shape: info32=except, info16=engine, status=0xffff, notifier_err latch) and post its channel event, to test whether a synthetic engine-error edge ends a refused launch's cudaDeviceSynchronize spin (the authored sw release lands - measured 0x6 - but the kernel never completes for a never-executed launch)
Diffstat (limited to 'kernel/gsp_sema_service.h')
| -rw-r--r-- | kernel/gsp_sema_service.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/gsp_sema_service.h b/kernel/gsp_sema_service.h index f891de1..fbc7e4d 100644 --- a/kernel/gsp_sema_service.h +++ b/kernel/gsp_sema_service.h @@ -44,6 +44,14 @@ void gsp_sema_service_channel_add(const struct sema_channel_desc *desc); void gsp_sema_service_channel_del(struct nv_vgpu_device *vgpu, u32 h_object); /* + * r616 diag: manually write a channel's error notifier (engine-exception + * shape) and post its channel event, to test whether a refused launch's + * hung client can be ended by a fault-conversion edge. h_object 0 = every + * valid channel of the device. Debug only. + */ +int gsp_sema_channel_fault_poke(struct nv_vgpu_device *vgpu, u32 h_object); + +/* * Release every piece of service state that belongs to one mdev before its * guest session disappears: drop the mdev's channels (per-vgpu session end), * clear a release hold that names it (never dereference a removed device), |
