<feed xmlns='http://www.w3.org/2005/Atom'>
<title>open-iov.git, branch master</title>
<subtitle>Open-IOV vGPU-IO: host-side GSP emulation for unmodified NVIDIA guest drivers
</subtitle>
<id>https://git.vgpu.io/open-iov.git/atom?h=master</id>
<link rel='self' href='https://git.vgpu.io/open-iov.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/'/>
<updated>2026-10-12T05:46:11+00:00</updated>
<entry>
<title>vgsp-sema: a stale-dropped pool read must not consume the residue rule (second-client fix)</title>
<updated>2026-10-12T05:46:11+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T05:39:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=a2fa3493751a37438c9adf12983c956c2df54836'/>
<id>urn:sha1:a2fa3493751a37438c9adf12983c956c2df54836</id>
<content type='text'>
r99/r100: the fresh session's reused pool page reads the previous session's
residue (cur=2) before the first genuine release (pay=1) is translated; the
translated read set ch-&gt;pool_rel_seen, so every later residue release
(payload &lt;= cur) was silently dropped by the final else and the client spun
at DEVICE forever. A read that applied or deferred nothing now leaves the
flag clear so the r63/r64 residue re-seed still fires for the first genuine
release of the session.
</content>
</entry>
<entry>
<title>vgsp-sema: discover GR data candidates from the fresh inline param block (second-client fix)</title>
<updated>2026-10-12T05:46:11+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T05:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=a3dcfcc67f1580a9d87384ab9ae25f064b83abca'/>
<id>urn:sha1:a3dcfcc67f1580a9d87384ab9ae25f064b83abca</id>
<content type='text'>
Second-client launches scanned a stale/reused guest param page that still
held the FIRST client's device VAs: zero new candidates resolved, nothing
was relocated, and the engine executed with unrelocated guest pointers
(r97 evidence: client#1 '15 candidate ptrs, 100 pages resolved' and win0
param 160=110400; client#2 '12 candidates, 1 page' with 160=75552ec00000
unrelocated). The driver-authored inline param block is captured from the
pushbuffer at request time, so scanning it makes pointer discovery
independent of guest-page reuse timing. Adds svc_gr_scan_cand()/
svc_gr_scan_inline() and the DIAG win0/guest-param proof line. Client #1
stays green (4 cycles); the remaining second-client stall is the pool
semaphore residue (see next commit).
</content>
</entry>
<entry>
<title>site: retitle firmware section on the landing page</title>
<updated>2026-10-12T05:46:11+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T05:28:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=863d764c5581b60514b6ce0691e3660f8c7f0917'/>
<id>urn:sha1:863d764c5581b60514b6ce0691e3660f8c7f0917</id>
<content type='text'>
</content>
</entry>
<entry>
<title>site: repository links use cgit tree URLs; external repo-link audit</title>
<updated>2026-10-12T04:47:10+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T04:47:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=4e458bd90dda5823ce2943cd2b4cbded977d8487'/>
<id>urn:sha1:4e458bd90dda5823ce2943cd2b4cbded977d8487</id>
<content type='text'>
- titles.json: map relative doc links to https://git.vgpu.io/open-iov.git/tree/...
  (the host runs cgit; /blob/ URLs do not exist)
- check_site.py: verify every git.vgpu.io URL on every page resolves (HTTP
  status check, cached, with backoff)
- site pages: repository home links point at the .git/ URL
- .publish-manifest.json: revised revision records
</content>
</entry>
<entry>
<title>site: remove LibVF.IO reference from the landing page</title>
<updated>2026-10-12T04:34:43+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T04:34:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=fa92ebc70924ad59e67c9b9c5003d7c6bbfec9d8'/>
<id>urn:sha1:fa92ebc70924ad59e67c9b9c5003d7c6bbfec9d8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>site: open-iov.org 2026 documentation update</title>
<updated>2026-10-12T04:32:00+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T04:32:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=5cab6a4e57c5fa4af3a2d6c0f386b6f9d436d7ad'/>
<id>urn:sha1:5cab6a4e57c5fa4af3a2d6c0f386b6f9d436d7ad</id>
<content type='text'>
- tools/site: Markdown-to-MediaWiki converter (tracked-paths-only link
  mapping, local-marker scan, About-message insert), WikiBot publisher
  with diff/check modes and publish manifest, live site auditor, image
  uploader, site-only page sources (landing page, About, index, sidebar,
  banner templates, About-message template).
- wiki: new public deep-dive sources (project status, install, FAQ,
  system overview, GSP and GSP-RM, execution frontier, host module,
  guest stack, UVM, physical backend, driver lifecycle, risc-v-gsp-rm-debugger,
  hardware/software matrix, HAAEEP, glossary); refreshed CUDA userspace
  status; corrected cross-document links; README rewritten for the new set.
- wiki/.publish-manifest.json records each published revision for rollback.
</content>
</entry>
<entry>
<title>cuda-ab: soak.sh client list env-overridable (SOAK_CLIENTS); smiley last by default</title>
<updated>2026-10-12T03:44:24+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T03:44:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=40a01810c77838b3876ecea8fed2f5d72e08a378'/>
<id>urn:sha1:40a01810c77838b3876ecea8fed2f5d72e08a378</id>
<content type='text'>
smiley (cudaMallocManaged-class, known-failing until the param-offset
fix) moved last so a baseline pass exercises the other 13 first.
</content>
</entry>
<entry>
<title>cuda-ab: victory-series coverage battery (8 new clients) + soak runner list</title>
<updated>2026-10-12T03:44:06+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T03:44:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=ccdfc1b2cc31a04110783e96a310f5ed36ca0a9d'/>
<id>urn:sha1:ccdfc1b2cc31a04110783e96a310f5ed36ca0a9d</id>
<content type='text'>
victory_saxpy, victory_reduce (shared+atomics), victory_matmul (tiled
shared), victory_strided, victory_memset2d (pitched), victory_atomics,
victory_streams_events (3 streams + events), victory_math (mixed
int/float/double). Each verifies via readback and prints STATUS OK|FAIL.
soak.sh now runs the full 14-client set (seq or sustained).
</content>
</entry>
<entry>
<title>vgsp-gr: dump first words of changed bounce pages (m142 diagnostic)</title>
<updated>2026-10-12T03:26:27+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T03:26:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=1dab2b18a6b2bed1354c55822d060a539518806b'/>
<id>urn:sha1:1dab2b18a6b2bed1354c55822d060a539518806b</id>
<content type='text'>
Discriminates engine-side writes of float data (kernel ran with c on this
buffer) from non-kernel writes (pointers/QMD-shaped words).
</content>
</entry>
<entry>
<title>vgsp-gr: log the changed bounce page indexes at copy-out (m142 diagnostic)</title>
<updated>2026-10-12T02:41:26+00:00</updated>
<author>
<name>Arthur Hanson Rasmusson</name>
<email>arthur@vgpu.io</email>
</author>
<published>2026-10-12T02:41:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vgpu.io/open-iov.git/commit/?id=d02b8531472bc6c06e2a231c45ebf5cd3ecb6edd'/>
<id>urn:sha1:d02b8531472bc6c06e2a231c45ebf5cd3ecb6edd</id>
<content type='text'>
8 changed pages x 4 passes for smiley vs 33 for victory's vadd - the
indexes name the relocated range (bi &gt;= 0x40 = the c-pointer output
window 0x150000+) and discriminate engine-side partial dispatch from a
guest write-back/read attribution failure.
</content>
</entry>
</feed>
