summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-07 15:01:59 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-07 15:01:59 -0400
commit0c040b3b8925d01b3e1615b08c4cd6ec7f18d7d4 (patch)
tree7fb62fbdcb438a168de47ba8f53c753209f71711 /kernel
parent6351a2231ee58317d3c7a237192773b46618399c (diff)
downloadopen-iov-0c040b3b8925d01b3e1615b08c4cd6ec7f18d7d4.tar.gz
open-iov-0c040b3b8925d01b3e1615b08c4cd6ec7f18d7d4.zip
vgsp: m105 - route every const-bank page through the proven window-0 pool
Only QMD words 32 (param) and 48 (program) went to the engine-proven window-0 pool; banks 1/3/4/7 (words 34..46) fell to the window-1 scratch path, which the SM appears not to resolve (m94's pre-SM failure, and the bank-4 value never reaching the kernel: m104's injected base read back as zero through the ULDC). Route all bank pages to window-0 (5 of 8 slots used: 32/34/40/46/48).
Diffstat (limited to 'kernel')
-rw-r--r--kernel/gsp_phys_booter.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c
index f3efb00..5639030 100644
--- a/kernel/gsp_phys_booter.c
+++ b/kernel/gsp_phys_booter.c
@@ -16645,7 +16645,10 @@ int gsp_phys_backend_guest_gr_submit(const struct gsp_phys_gr_submit *req,
u32 sh_line =
boot_stage.rmcall_guest_pt_next_line;
bool win0 = (pg->qmd_word == 32u ||
- pg->qmd_word == 48u) &&
+ pg->qmd_word == 48u ||
+ (pg->qmd_word >= 34u &&
+ pg->qmd_word <= 46u &&
+ !(pg->qmd_word & 1))) &&
gsp_phys_rmcall_gr_shadow_win0_value() &&
boot_stage.rmcall_gr_shadow_win0.pages &&
boot_stage.rmcall_gr_shadow_win0_used <