diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-23 00:51:55 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-23 00:51:55 -0400 |
| commit | 7897fe79ba6a00cc59b7a357903ecfc70480ce97 (patch) | |
| tree | 394a47a5d22b2d6072e19c92e9ced1e667817788 /kernel/include | |
| parent | 7aef82a5112ee72ee2fc5a430db072085933e927 (diff) | |
| download | open-iov-7897fe79ba6a00cc59b7a357903ecfc70480ce97.tar.gz open-iov-7897fe79ba6a00cc59b7a357903ecfc70480ce97.zip | |
tools: add guest-diag (ptrace ioctl tracer, vmcycle, root-port QEMU cmdline)
The ptrace tracer resolves the current CUDA blocker: libcuda issues raw
syscall instructions, so LD_PRELOAD shims and ltrace see nothing; following
the child with PTRACE_SYSCALL + PTRACE_GET_SYSCALL_INFO does. It found
UVM_REGISTER_GPU (ioctl 0x25) returning rmStatus=0x56 NV_ERR_NOT_SUPPORTED,
with inputs identical to the working host run (rmCtrlFd=-1, hClient=0,
hSmcPartRef=0). Also dumps NV_ESC_RM_CONTROL cmd/status and RM alloc/free
statuses (all zero) and the UVM ioctl set (guest stops after
0x27,0x1,0x25,0x2 vs 141 ioctls on the host).
launch_qemu_rootport.sh is the working QEMU command line with the
pcie-root-port fix (see its header + the handoff PART 4); vmcycle.sh drives
the module/mdev/VM reload cycle around it.
Diffstat (limited to 'kernel/include')
0 files changed, 0 insertions, 0 deletions
