| Commit message (Collapse) | Author | Age | |
|---|---|---|---|
| * | guest-diag: injector handles slow chan_dump (3s wait, last-marker parse) | Arthur Hanson Rasmusson | 2026-09-29 |
| | | |||
| * | guest-diag: semfix watcher (stale sem-pool VA->PA from guest truth); ↵ | Arthur Hanson Rasmusson | 2026-09-29 |
| | | | | | injector marker-based handle discovery | ||
| * | sema-svc: async VA->PA injection queue; guest-diag: fast counter+pin ↵ | Arthur Hanson Rasmusson | 2026-09-29 |
| | | | | | injector, wait sampler | ||
| * | tools: inject_counters.sh - counter index order is descending by handle | Arthur Hanson Rasmusson | 2026-09-29 |
| | | | | | | | | | Live verification: the trackers waiting on counter slots idx2/idx3 belong to the channels 2nd/3rd from the top of the ascending handle list, and the only channel whose GPFIFO put advanced to 2 was the 4th from the top, whose tracker polled idx3. Zip descending handles with ascending counter indices by default; ORDER=asc restores creation order. | ||
| * | tools: durable guest counter enumeration/injection and VA reader | Arthur Hanson Rasmusson | 2026-09-29 |
| The counter enumeration/injection workflow lived in the guest's /tmp and was lost on every restart. Make it durable under tools/guest-diag: - sem_counters.py: translate a process's per-channel u32 completion counters (16-byte stride in the /dev/nvidiactl counter page) to guest PAs through /proc/<pid>/pagemap; --pairs emits handle,va,pa triples. - sem_slots.py: read/write the counter slots via /proc/<pid>/mem (fallback for the host counter publish). - read_va.py: hex dump a process VA (UVM sysmem GPU VAs are usually valid CPU VAs in the owning process); --u32 for method streams. - inject_counters.sh: host-side one-shot: push the tool, take the GR handles from the live chan_dump, enumerate, then register each counter with sema_counter and pin its VA with sema_map_add. - push_guest_tools.sh: push the new tools after every VM start. - launch_qemu_direct.sh: parameterized mdev UUID/paths instead of a stale hardcoded one; committed so it survives checkouts. | |||
