diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-14 15:52:51 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-14 15:52:51 -0400 |
| commit | 857fe5f94f4554847b61592a544f3d7e22cdf1ee (patch) | |
| tree | 14c1963b963185e9507fa23fb1e5ba18ad9fd2a1 /wiki/open-iov.org/resources/src/mediawiki.action/images/checker.svg?ff513 | |
| parent | 17393a74824ce347ed0c4113a5e5f0c28b4ce441 (diff) | |
| download | open-iov-master.tar.gz open-iov-master.zip | |
m150 grew the GR data bounce window to 208 pages at main-PT slots
0x110..0x1df but left the win0 QMD shadow pool at VA 0x190000 (slots
0x190..0x197) - inside the new window. The win0 plant is unconditional on
every gsp_phys_rmcall_pdb_build() and runs after the one-shot bounce
plant, so it hijacked the PTEs for bounce pages 128..135, which hold the
first 8 pages of the third operand. victory_matmul's C rows 0..31
(8 pages x 256 floats = 8192 elements) were written into the shadow pages
and lost: MATMUL bad=8192, copy-out '56 changed by engine (first bi 136)'.
Move GSP_PHYS_RMCALL_VA_GR_SHADOW0_BASE to 0x1e0000 (slots 0x1e0..0x1e7),
directly above the last bounce/mail/marker page (0x1df000) and below the
0x200000 guest scratch window; both the plant and the launch-time shadow
VA derive from the macro. Add a static_assert so any future bounce growth
cannot silently re-introduce the overlap, and correct the stale slot-range
comments/logs (0x108..0x10f -> the current range).
Evidence: /tmp/opencode/dmesg-r143-mailmatmul.log (main PT[190..197] =
win0 chunk DMAs; 'window[160] reloc=0x1b0000 changed=1', 'window[128]
reloc=0x190000 changed=0'; MATMUL bad=8192). Live validation pending: a
fresh cycle's victory_matmul must print bad=0 STATUS OK.
Diffstat (limited to 'wiki/open-iov.org/resources/src/mediawiki.action/images/checker.svg?ff513')
0 files changed, 0 insertions, 0 deletions
