diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-07 15:01:59 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-07 15:01:59 -0400 |
| commit | e6de8e91340916467c16ddd246868b04083f68a2 (patch) | |
| tree | 0bc8decb78d415e4f8553ffca51aa2ac8e74c687 /kernel | |
| parent | cf65fc4ba9011e2214dc00e198599e581fc391ee (diff) | |
| download | open-iov-e6de8e91340916467c16ddd246868b04083f68a2.tar.gz open-iov-e6de8e91340916467c16ddd246868b04083f68a2.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.c | 5 |
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 < |
