diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-29 15:42:58 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-29 15:42:58 -0400 |
| commit | 9a908f0082f30b45b2fc0ea1289ed2f74bf64917 (patch) | |
| tree | dfaed581f6ff05de9843df8f2c7ac593267b960e /tools/guest-diag | |
| parent | 52cf2ebb96e7e903b60a817b079a16c1f5340e7d (diff) | |
| download | open-iov-9a908f0082f30b45b2fc0ea1289ed2f74bf64917.tar.gz open-iov-9a908f0082f30b45b2fc0ea1289ed2f74bf64917.zip | |
guest-diag: scan 512KB per 2MB region and start window at 0x200000000 (cover GR GPFIFO rings)
Diffstat (limited to 'tools/guest-diag')
| -rw-r--r-- | tools/guest-diag/guest_pin_stream.py | 5 | ||||
| -rw-r--r-- | tools/guest-diag/pin_gr_stream.py | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/tools/guest-diag/guest_pin_stream.py b/tools/guest-diag/guest_pin_stream.py index 1ff0d3f..8d0b34d 100644 --- a/tools/guest-diag/guest_pin_stream.py +++ b/tools/guest-diag/guest_pin_stream.py @@ -25,7 +25,10 @@ PAMAX = int(sys.argv[5], 16) if len(sys.argv) > 5 else 0x180000000 INTERVAL = float(os.environ.get("STREAM_INTERVAL", "0.25")) BATCH = 4096 REGION = 0x200000 -SPAN = int(os.environ.get("STREAM_SPAN", "0x10000"), 16) +# The GR GPFIFO rings sit at 0x20020c000 + 0x3000*rank (region offset 0xc000 +# ..0x45000) and the per-channel push allocations follow; 512 KB per 2 MB +# region covers both without scanning holes that hold nothing. +SPAN = int(os.environ.get("STREAM_SPAN", "0x80000"), 16) TRACE = ("/sys/kernel/tracing/trace" if os.path.exists("/sys/kernel/tracing/trace") else "/sys/kernel/debug/tracing/trace") diff --git a/tools/guest-diag/pin_gr_stream.py b/tools/guest-diag/pin_gr_stream.py index 44f8681..643145b 100644 --- a/tools/guest-diag/pin_gr_stream.py +++ b/tools/guest-diag/pin_gr_stream.py @@ -22,7 +22,10 @@ PARAM = "/sys/module/open_iov_vfio/parameters" GUEST_SCRIPT = os.path.join(HERE, "guest_pin_stream.py") PORT = int(os.environ.get("PINWIN_PORT", "45678")) -LO = os.environ.get("PINWIN_LO", "0x200400000") +# 0x200000000 covers the GR GPFIFO rings/UVM channel mappings below the +# old 0x200400000 start; without them the host learns bogus vidmem pairs +# for the rings and never decodes GR pushes. +LO = os.environ.get("PINWIN_LO", "0x200000000") HI = os.environ.get("PINWIN_HI", "0x206000000") PAMAX = os.environ.get("PINWIN_PA_MAX", "0x180000000") SEMSTREAM = os.environ.get("SEM_STREAM_FILE", "/tmp/opencode/sem_stream.txt") |
